erstellt 13.08.99; überarbeitet 05.05.03; übersetzt 20.05.03; überarbeitet 21.01.04; © Copyright 2003 Deutsche Übersetzung Heinrich Gailer


Füllen Sie die Lücken aus

Hinweise:   Dies ist eine unbewertete Lückenübung Jede Frage besteht aus einem Satz, bei dem ein oder zwei Wörter fehlen. Jede Schaltfläche repräsentiert das fehlende Wort bzw. die fehlenden Wörter. Überlegen Sie welches Wort bzw. welche Wörter fehlen. Klicken Sie dann auf die Schaltfläche, um zu sehen ob Sie recht haben. Es wird keine Note für diese Übung ermittelt.


1.      Design der Teleskop-Klasse.     Die wichtigsten Zahlen, die ein Teleskop beschreiben, sind: der Durchmesser der Hauptlinse (das was vorne ist), die Brennweite der Hauptlinse und die Brennweite des Okulars. Basierend auf diesen Werten werden andere Merkmale des Teleskops wie Vergrößerung und die F-Zahl Hauptlinse berechnet.

Füllen Sie für das folgende Design der Klasse die Lücken aus:

class 
Eine Klasse, die ein Feldteleskop modelliert.

Konstruktoren

Teleskop ( double ,
            double ,
            double   )


Methoden

// Vergroesserung des Teleskops berechnen
double  

// F-Zahl des Teleskops berechnen
double  


2.      Überprüfung des Designs.     Schreiben Sie zur Überprüfung des Designs ein kleines Programm, das die Klasse verwendet um zu sehen, ob sie gut funktioniert. Erzeugen Sie ein Teleskop-Objekt mit einer Hauptlinse von 3.0 Zoll Durchmesser, einer Brennweite von 6.5 Zoll und einer Okularbrennweite von 0.8 Zoll erzeugt. Geben Sie die Vergrößerung und die F-Zahl aus.

class TeleskopTester
{

  public static void main ( String[] args )
  {
     Teleskop tele = new   ;

     System.out.println( "Vergroesserung: "    + tele. +
                         "  F-Zahl: " + tele. );

  }
}


3.      Grundgerüst der Klasse.    Füllen Sie die Lücken aus, um das Grundgerüst der Klasse anzugeben.

class Teleskop
{
  // 

  // 

  // 

}


4.      Füllen Sie die Instanzvariablen aus.    Füllen Sie den Datentyp jeder Instanzvariablen aus.

class Teleskop
{
  // Instanzvariablen
   durchmesser;
   brennweiteHauptlinse;
   brennweiteOkular;

  // Konstruktoren

  // Methoden

}


5.      Vervollständigen Sie den Konstruktor.    Der Konstruktor wird die Instanzvariablen der konstruierten Objekte initialisieren.

class Teleskop
{
  // Instance Variables
  double durchmesser;
  double brennweiteHauptlinse;
  double brennweiteOkular;

  // Konstruktoren
   ( double , double , double   )
  {
    this.durchmesser =  ;
    this.brennweiteHauptlinse =  ;
    this.brennweiteOkular =  ;

  }



  // Methoden

}

Wenn eine Instanzvariable und ein Parameter den gleichen Bezeichner haben, kann die Instanzvariable des Objekts mit "this.bezeichner" angegeben werden.



6.      Vervollständigen Sie eine Methode.     Die Dokumentation für die Methode vergroesserung() sagt, dass sie folgendermaßen aussieht:

// Vergroesserung (magnification) des Teleskops berechnen
double  vergroesserung()

Die zu verwendende Formel lautet: magnification = brennweiteHauptlinse/brennweiteOkular

class Teleskop
{
  // Instanzvariablen
  double durchmesser;
  double brennweiteHauptlinse;
  double brennweiteOkular;

  // Konstruktoren
  Teleskop ( double durchmesser, double brennweiteHauptlinse, double brennweiteOkular )
  {
    this.durchmesser   = durchmesser ;
    this.brennweiteHauptlinse = brennweiteHauptlinse ;
    this.brennweiteOkular  = brennweiteOkular ;

  }

  // Methoden
  double vergroesserung()
  {
    return  /  ;
  }
}

Sie müssen in der Methode nicht "this" verwenden, da es klar ist, dass der Bezeichner sich auf die Instanzvariable bezieht. Die Methode vergroesserung() kann sogar nicht mal die Parameter des Konstruktors sehen. (Denken Sie daran, die Parameter sind wie ein privates Telegramm an den Konstruktor.)



7.      Vervollständigen Sie die andere Methode.     Die Dokumentation sagt sie sieht aus wie folgt:

// Berechnen der F-Zahl (f-number) des Teleskops
double  fZahl()

Sie verwendet die Formel: fNumber = brennweiteHauptlinse/durchmesser

class Teleskop
{
  // Instanzvariablen
  double durchmesser;
  double brennweiteHauptlinse;
  double brennweiteOkular;

  // Konstruktoren
  Teleskop ( double durchmesser, double brennweiteHauptlinse, double brennweiteOkular )
  {
    this.durchmesser   = durchmesser ;
    this.brennweiteHauptlinse = brennweiteHauptlinse ;
    this.brennweiteOkular  = brennweiteOkular ;
  }

  // Methoden
  double vergroesserung()
  {
    return brennweiteHauptlinse / brennweiteOkular ;
  }

  double fZahl()
  {
    return  /  ;
  }
}




8. Testen Sie das Programm aus einer anderen Klasse heraus mit dem Namen  TeleskopTester. Ende des Tests. Wenn Sie ihn wiederholen möchten, klicken Sie in Ihrem Browser auf "Aktualisieren". Zurück zur Übersicht.