java:polymorphism
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | |||
java:polymorphism [2020/02/24 04:36] – [Δυναμικός Πολυμορφισμός] gthanos | java:polymorphism [2020/03/27 13:18] (current) – [Δυναμικός Πολυμορφισμός] gthanos | ||
---|---|---|---|
Line 32: | Line 32: | ||
Ας υποθέσουμε δύο κλάσεις που η μία κληρονομεί από την άλλη και οι δύο έχουν δύο διακριτές μεθόδους με το ίδιο όνομα και τις ίδιες τυπικές παραμέτρους, | Ας υποθέσουμε δύο κλάσεις που η μία κληρονομεί από την άλλη και οι δύο έχουν δύο διακριτές μεθόδους με το ίδιο όνομα και τις ίδιες τυπικές παραμέτρους, | ||
- | <code java TestDog.java> | + | <code java Polymorphism.java> |
- | class Animal { | + | class Animal { |
- | | + | |
- | System.out.println(" | + | |
- | | + | System.out.println(" |
+ | } | ||
} | } | ||
class Mammal extends Animal { | class Mammal extends Animal { | ||
- | | + | int numberOfBabies; |
- | System.out.println(" | + | |
- | | + | public Mammal(int babies) { |
+ | numberOfBabies = babies; | ||
+ | } | ||
+ | |||
+ | public int getBabies() { | ||
+ | return numberOfBabies; | ||
+ | } | ||
+ | |||
+ | | ||
+ | System.out.println(" | ||
+ | } | ||
} | } | ||
class Dog extends Mammal { | class Dog extends Mammal { | ||
- | + | | |
- | public void signature() { | + | |
- | System.out.println(" | + | public Dog(int babies, String name) { |
- | | + | super(babies); |
+ | this.name = name; | ||
+ | } | ||
+ | |||
+ | public String getName() { | ||
+ | return name; | ||
+ | } | ||
+ | |||
+ | | ||
+ | System.out.println(" | ||
+ | } | ||
} | } | ||
- | public class TestDog | + | public class Polymorphism |
- | public static void main(String args[]) { | + | |
- | Animal | + | Animal |
- | Animal | + | Animal |
- | Animal | + | Animal |
- | a.signature(); | + | animal.signature(); |
- | b.signature(); | + | |
- | c.signature(); | + | dog.signature(); |
- | | + | |
+ | // | ||
+ | // | ||
+ | | ||
} | } | ||
</ | </ |
java/polymorphism.1582518991.txt.gz · Last modified: 2020/02/24 04:36 (external edit)