Hallo und guten Abend,
Ich habe so weit ich das beurteilen kann ein paar Grundkenntnisse in Java und bin dabei mir das Buch Entwurfsmuster von Kopf bis Fuß durchzulesen. Momentan bin ich noch ganz am Anfang auf Seite 46.
Hier geht es darum dass eine Superklasse Ente und eine Unterklasse z.b. Stockente oder Gummiente entweder ein Verhalten hat oder eben nicht.
Eine Gummiente kann nicht quaken, soweit hab ich das verstanden.
Also sollen die Unterklassen ein Interface implementieren, welches das Verhalten beinhaltet.
Im Fall dass es eine echte Ente ist, überschreibe ich die Methode quaken, wenn es eine Gummiente ist, dann hat die Methode quaken keine Funktion.
Aber was ich mich nach all den Tutorials frage: Warum soll das weniger aufwendig sein ?
Ich muss in jeder Unterklasse die quaken kann sowieso einzeln die leere Methode implementieren und überschreiben. Da kann ich mir die Interface Geschichte doch gleich sparen und die Methode einzeln in jeder Klasse erstellen. Ist doch genau der selbe Aufwand. Außer dass ich in den Unterklassen wie z.b. Gummiente keine Methode implementieren muss sondern einfach keine schreibe.
Also für was macht man das dann so?
Ich habe so weit ich das beurteilen kann ein paar Grundkenntnisse in Java und bin dabei mir das Buch Entwurfsmuster von Kopf bis Fuß durchzulesen. Momentan bin ich noch ganz am Anfang auf Seite 46.
Hier geht es darum dass eine Superklasse Ente und eine Unterklasse z.b. Stockente oder Gummiente entweder ein Verhalten hat oder eben nicht.
Eine Gummiente kann nicht quaken, soweit hab ich das verstanden.
Also sollen die Unterklassen ein Interface implementieren, welches das Verhalten beinhaltet.
Im Fall dass es eine echte Ente ist, überschreibe ich die Methode quaken, wenn es eine Gummiente ist, dann hat die Methode quaken keine Funktion.
Aber was ich mich nach all den Tutorials frage: Warum soll das weniger aufwendig sein ?
Ich muss in jeder Unterklasse die quaken kann sowieso einzeln die leere Methode implementieren und überschreiben. Da kann ich mir die Interface Geschichte doch gleich sparen und die Methode einzeln in jeder Klasse erstellen. Ist doch genau der selbe Aufwand. Außer dass ich in den Unterklassen wie z.b. Gummiente keine Methode implementieren muss sondern einfach keine schreibe.
Also für was macht man das dann so?