Advertisement
Guest User

Untitled

a guest
Mar 28th, 2020
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.19 KB | None | 0 0
  1. public static void main(String[] args) {
  2. // metody greeting z cat1, dog1 i bigDog1 wywołane zostałyby nawet gdyby nie przesłaniały metody z klasy abstrakcyjnej
  3. Cat cat1 = new Cat();
  4. cat1.greeting();
  5. Dog dog1 = new Dog();
  6. dog1.greeting();
  7. BigDog bigDog1 = new BigDog();
  8. bigDog1.greeting();
  9.  
  10. // metody z animal również nie muszą być przesłonięte, ponieważ java automatycznie castuje animal na kota.
  11. Animal animal1 = new Cat();
  12. // sprawdzamy - wynik zwórci, że to kot
  13. // System.out.println(animal1);
  14. animal1.greeting();
  15. Animal animal2 = new Dog();
  16. animal2.greeting();
  17. Animal animal3 = new BigDog();
  18. animal3.greeting();
  19. // nie stworzymy abstrakcyjnej
  20. // Animal animal4 = new Animal();
  21.  
  22.  
  23. Dog dog2 = (Dog)animal2;
  24. BigDog bigDog2 = (BigDog)animal3;
  25. Dog dog3 = (Dog)animal3;
  26. // Pies nie może byc zcastowany do kota, ponieważ zawiera metode która nie jest wspólna czyli
  27. // nie przesłania metody z klasy abstrakcyjnej
  28. // Cat cat2 = (Cat)animal2;
  29. dog2.greeting(dog3);
  30. dog3.greeting(dog2);
  31. dog2.greeting(bigDog2);
  32. bigDog2.greeting(dog2);
  33. bigDog2.greeting(bigDog1);
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement