Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static void main(String[] args) {
- // metody greeting z cat1, dog1 i bigDog1 wywołane zostałyby nawet gdyby nie przesłaniały metody z klasy abstrakcyjnej
- Cat cat1 = new Cat();
- cat1.greeting();
- Dog dog1 = new Dog();
- dog1.greeting();
- BigDog bigDog1 = new BigDog();
- bigDog1.greeting();
- // metody z animal również nie muszą być przesłonięte, ponieważ java automatycznie castuje animal na kota.
- Animal animal1 = new Cat();
- // sprawdzamy - wynik zwórci, że to kot
- // System.out.println(animal1);
- animal1.greeting();
- Animal animal2 = new Dog();
- animal2.greeting();
- Animal animal3 = new BigDog();
- animal3.greeting();
- // nie stworzymy abstrakcyjnej
- // Animal animal4 = new Animal();
- Dog dog2 = (Dog)animal2;
- BigDog bigDog2 = (BigDog)animal3;
- Dog dog3 = (Dog)animal3;
- // Pies nie może byc zcastowany do kota, ponieważ zawiera metode która nie jest wspólna czyli
- // nie przesłania metody z klasy abstrakcyjnej
- // Cat cat2 = (Cat)animal2;
- dog2.greeting(dog3);
- dog3.greeting(dog2);
- dog2.greeting(bigDog2);
- bigDog2.greeting(dog2);
- bigDog2.greeting(bigDog1);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement