1. Aufgabe:
Sie haben folgende Vereinbarung einer Klasse Autoklasse:
class Autoklasse {
int geschwindigkeit;
void init() {
geschwindigkeit = 150;
}
…
}
Ändern Sie die Vereinbarung so, dass die Methode init() durch einen Konstruktor ersetzt wird. Über den Konstruktor soll ebenfalls die Instanzvariable geschwindigkeit auf den Wert 150 gesetzt werden.
2. Aufgabe:
Sie haben folgende Vereinbarung einer Klasse Tier:
class Tier {
int groesse;
Tier(int groesse) {
this.groesse = groesse;
}
…
}
Was geschieht, wenn Sie eine neue Instanz der Klasse Tier mit der Anweisung
Tier kleinesTier = new Tier();
erzeugen wollen? Begründen Sie bitte Ihre Antwort.
3. Aufgabe:
Sie haben von einer selbst erstellten Klasse eine weitere Klasse abgeleitet. In der abgeleiteten Klasse haben Sie die Methode toString() überschrieben, in der Basisklasse dagegen nicht.
Können Sie die Methode toString() der Basisklasse in der abgeleiteten Klasse mit der Referenz super aufrufen? Wenn ja, was liefert Ihnen diese Methode?
4. Aufgabe:
Sie wollen eine Klasse Katze von der Klasse Haustiere ableiten. Die Klasse Haustiere verfügt lediglich über einen Konstruktor, der zwei int-Typen als Parameter verarbeitet. Was müssen Sie beim Konstruktor der Klasse Katze in jedem Fall berücksichtigen?
5. Aufgabe:
Sie haben folgende Basisklasse Insekt:
class Insekt {
int laenge;
int gewicht;
//der Konstruktor
Insekt(int laenge, int gewicht) {
this.laenge = laenge;
this.gewicht = gewicht;
}
//die Methode zum Essen
void essen() {
laenge = laenge + 1;
gewicht = gewicht + 1;
}
//die Methode zur Ausgabe
void ausgabe() {
System.out.println("Das Insekt ist " + laenge + " cm lang und wiegt " + gewicht + " Gramm.");
}
}
Leiten Sie aus dieser Basisklasse eine Klasse Biene ab. Die Klasse Biene soll zusätzlich eine Instanzvariable geschwindigkeit enthalten, die über einen Konstruktor mit einem beliebigen Wert initialisiert werden kann.
Ändern Sie auch die Methode ausgabe() der Klasse Biene so, dass zusätzlich die Geschwindigkeit ausgegeben wird.
Stellen Sie in Ihrem Programm sicher, dass die Methode ausgabe() in der Klasse Biene die Methode ausgabe() in der Klasse Insekt in jedem Fall überschreibt.
Testen Sie Ihre neue Klasse, indem Sie eine main()-Methode schreiben und in dieser je ein Objekt der Basisklasse und der abgeleiteten Klasse erzeugen und jeweils beide Methoden mindestens einmal aufrufen.