Hallo zusammen,
aus einer alten Prüfung beschäftige ich mich gerade mit dieser Aufgabe:
Programmieren Sie in Java eine Vererbungshierarchie mit Klassen und Interfaces für folgende Objekttypen: Fleischfresser, Pflanzenfresser, Tier, Saeugetier, Loewe, Elefant, Schwein, Vogel, Adler, Fisch und Hai. Berücksichtigen Sie folgende Beziehungen:
· Jedes Saeugetier ist ein Tier.
· Jeder Vogel ist ein Tier.
· Jeder Fisch ist ein Tier.
· Jeder Loewe ist ein Saeugetier und ein Fleischfresser.
· Jeder Elefant ist ein Saeugetier und ein Pflanzenfresser.
· Jedes Schwein ist ein Saeugetier und ein Fleischfresser und ein Pflanzenfresser.
· Jeder Adler ist ein Vogel und ein Fleischfresser.
· Jeder Hai ist ein Fisch und ein Fleischfresser.
Das Geburtsdatum eines jeden Tieres soll in einem public-Attribut vom Typ java.util.Date gespeichert werden können (ausnahmsweise nicht private, damit wir uns hier die get- und set-Methoden sparen können). Verzichten Sie auf weitere Attribute. Lassen Sie auch alle Konstruktoren und Methoden weg. Es genügt jeweils der Klassen- bzw. Interface-Rahmen und, wo erforderlich, das Attribut für das Geburtsdatum. Stellen Sie sicher, dass nur von Loewe, Elefant, Schwein, Adler und Hai tatsächlich Objekte bzw. Instanzen erzeugt werden können.
Das ganze sieht dann wie im Bild aus. Also Saeugetier, Vogel, Fisch sind abstrakt, damit es keine Instanzen von Ihnen geben kann. Fleisch- und Pflanzenfresser sind Interfaces (weil?).
Das Geburtsdatum müssen ja nur Löwe, Elefant, Schwein, Adler und Hai haben.
Doch dort häng ich fest, der Import in den besagten Klassen ist klar.
Aktuell sieht es bei mir beispielsweise so aus:
Ist das schon alles?
aus einer alten Prüfung beschäftige ich mich gerade mit dieser Aufgabe:
Programmieren Sie in Java eine Vererbungshierarchie mit Klassen und Interfaces für folgende Objekttypen: Fleischfresser, Pflanzenfresser, Tier, Saeugetier, Loewe, Elefant, Schwein, Vogel, Adler, Fisch und Hai. Berücksichtigen Sie folgende Beziehungen:
· Jedes Saeugetier ist ein Tier.
· Jeder Vogel ist ein Tier.
· Jeder Fisch ist ein Tier.
· Jeder Loewe ist ein Saeugetier und ein Fleischfresser.
· Jeder Elefant ist ein Saeugetier und ein Pflanzenfresser.
· Jedes Schwein ist ein Saeugetier und ein Fleischfresser und ein Pflanzenfresser.
· Jeder Adler ist ein Vogel und ein Fleischfresser.
· Jeder Hai ist ein Fisch und ein Fleischfresser.
Das Geburtsdatum eines jeden Tieres soll in einem public-Attribut vom Typ java.util.Date gespeichert werden können (ausnahmsweise nicht private, damit wir uns hier die get- und set-Methoden sparen können). Verzichten Sie auf weitere Attribute. Lassen Sie auch alle Konstruktoren und Methoden weg. Es genügt jeweils der Klassen- bzw. Interface-Rahmen und, wo erforderlich, das Attribut für das Geburtsdatum. Stellen Sie sicher, dass nur von Loewe, Elefant, Schwein, Adler und Hai tatsächlich Objekte bzw. Instanzen erzeugt werden können.
Das ganze sieht dann wie im Bild aus. Also Saeugetier, Vogel, Fisch sind abstrakt, damit es keine Instanzen von Ihnen geben kann. Fleisch- und Pflanzenfresser sind Interfaces (weil?).
Das Geburtsdatum müssen ja nur Löwe, Elefant, Schwein, Adler und Hai haben.
Doch dort häng ich fest, der Import in den besagten Klassen ist klar.
Aktuell sieht es bei mir beispielsweise so aus:
Java:
import java.util.Date;
public class Hai extends Fisch implements Fleischfresser
{
public Hai()
{
Date date = new Date();
}
}
Ist das schon alles?