erstellt 13.08.99; überarbeitet 05.05.03; übersetzt 20.05.03; überarbeitet 21.01.04, 10.01.05, 11.10.06, 10.01.11, 12.05.18, 20.11.18, 29.04.19, 30.11.20, 05.07.21, 24.05.22, 30.01.23; Deutsche Übersetzung Heinrich Gailer
Hinweise: Das ist eine unbewertete Lückenübung. Jede Frage besteht aus einem Satz, bei dem ein oder zwei Wörter fehlen. Ein Button repräsentiert das fehlende Wort bzw. die fehlenden Wörter. Wir überlegen welches Wort bzw. welche Wörter fehlen. Klicken dann auf die Schaltfläche, um zu sehen ob wir recht haben. Es wird keine Note für diese Übung ermittelt.
2. Überprüfung des Designs.
Wir schreiben zur Überprüfung des Designs ein kleines Programm, das die Klasse verwendet, um zu sehen ob sie gut funktioniert. Erzeugen dann ein Teleskop
-Objekt mit einer Hauptlinse von 3.0 Zoll Durchmesser, einer Brennweite von 6.5 Zoll und einer Okularbrennweite von 0.8 Zoll.
Wir geben die Vergrößerung und die F-Zahl aus.
3. Grundgerüst der Klasse. Wir füllen die Lücken aus, um das Grundgerüst der Klasse anzugeben.
4. Wir füllen die Instanzvariablen aus. Wir füllen den Datentyp jeder Instanzvariablen aus.
5. Wir vervollständigen den Konstruktor. Der Konstruktor wird die Instanzvariablen der konstruierten Objekte initialisieren.
Wenn eine Instanzvariable und ein Parameter den gleichen Bezeichner haben, kann auf die Instanzvariablen des Objekts über "this.bezeichner" zugegriffen werden.
6. Wir vervollständigen die erste Methode. Die Dokumentation für die Methode berechneVergroesserung()
besagt, dass sie folgendermaßen aussieht:
// Vergroesserung des Teleskops berechnen double berechneVergroesserung()
Die zu verwendende Formel lautet: vergroesserung = brennweiteHauptlinse / brennweiteOkular
class Teleskop { // Instanzvariablen double durchmesserHauptlinse; double brennweiteHauptlinse; double brennweiteOkular; // Konstruktor Teleskop ( double durchmesserHauptlinse, double brennweiteHauptlinse, double brennweiteOkular ) { this.durchmesserHauptlinse = durchmesserHauptlinse ; this.brennweiteHauptlinse = brennweiteHauptlinse ; this.brennweiteOkular = brennweiteOkular ; } // Instanzmethoden double berechneVergroesserung() { return / ; } }
Wir müssen in der Methode nicht "this" verwenden, da es klar ist, dass die Bezeichner sich auf die Instanzvariablen beziehen.
Die Methode berechneVergroesserung()
kann sogar nicht einmal die Parameter des Konstruktors sehen.
(Denkt daran, die Parameter sind wie ein privates Telegramm an den Konstruktor.)
7. Wir vervollständigen die nächste Methode. Die Dokumentation besagt, dass sie folgendermaßen aussieht:
// Berechnen der F-Zahl des Teleskops double berechneFZahl()
Wir verwenden die Formel: fZahl = brennweiteHauptlinse / durchmesserHauptlinse
8. Wir testen das Programm aus einer anderen Klasse heraus mit dem Namen TeleskopTester
.
Ende des Tests. Wer ihn wiederholen möchten, klickt in seinem Browser auf "Aktualisieren".
Zurück zum Inhaltsverzeichnis.