übersetzt 29.05.03; überarbeitet 03.02.04, 18.01.05, 11.07.06, 19.10.06, 17.01.10; Deutsche Übersetzung Heinrich Gailer

Quiz über Objektparameter

Das ist ein Übungsquiz. Das Ergebnis wird nicht gespeichert.

Hinweise: Wählen Sie für jede Frage die beste Antwort und klicken Sie auf das entsprechende Optionskästchen. Sie können Ihre Antwort jederzeit ändern. Wenn das Quiz bewertet wird, erscheint die richtige Antwort in der Textbox unterhalb der Frage.


1. Was ist ein aktueller Parameter?

a.    Der Bezeichner, der in einer Methode an Stelle des Werts verwendet wird, der an diese Methode vom Aufrufer übergeben wurde.
b.    Der Wert, der an eine Methode vom Aufrufer übergeben wurde.
c.    Eine Variable, die verwendet wird, um eine Zählschleife zu kontrollieren.
d.    Der Wert, der von einer Methode zurückgegeben wird.

2. Welcher Typ von Parameterübergabe wird in Java verwendet?

a.    Call-By-Value.
b.    Call-By-Object.
c.    Call-By-Parameter.
d.    Call-By-Waiting.

3. Wird es irgendeine Auswirkung auf den Aufrufer haben, wenn eine Methode einem primitiven Parameter einen neuen Wert zuweist?

a.    Nein, da alle Methoden eine Kopie des Werts vom Aufrufer haben.
b.    Nein, da es der Methode nicht erlaubt ist den Wert irgendeines Parameters zu ändern.
c.    Ja, die Änderung wird Auswirkungen auf den entsprechenden Wert des Aufrufers haben.
d.    Ja, da die Methode und ihr Aufrufer denselben Speicherabschnitt teilen.

4. Hat es irgendeine Auswirkung auf den Aufrufer, wenn eine Methode einem Objektreferenz-Parameter ein neues Objekt zuweist?

a.    Nein, da dies keine Objekte betrifft, die der Aufrufer referenzieren kann.
b.    Nein, da das keine legale Operation ist.
c.    Ja, da jetzt der Aufrufer das neue Objekt referenzieren kann.
d.    Ja, da das neue Objekt eines der Objekte des Aufrufers ersetzen wird.

5. Hat es irgendeine Auswirkung auf den Aufrufer, wenn eine Methode einem Objektelement, auf das sie durch einen Objektreferenz-Parameter zugreifen kann, einen neuen Wert zuweist?

a.    Nein, da sie nur eine Kopie des Objekts hat.
b.    Nein, da es nicht erlaubt ist das zu tun.
c.    Ja, das wird den Teil des Objekts ändern, den sowohl die Methode als auch der Aufrufer referenzieren.
d.    Ja, der Aufrufer wird jetzt ein neues Objekt bekommen.

6. Wie kann eine Methode an den Aufrufer einen primitiven Wert zurückliefern?

a.    Sie kann den Wert einem ihrer Parameter zuweisen.
b.    Sie kann den Wert an den Aufrufer zurückgeben, indem sie die return-Anweisung verwendet.
c.    Eine Methode kann unter keinen Umständen mit dem Aufrufer kommunizieren.
d.    Sie kann ihren Aufrufer mit dem korrekten Wert aufrufen.

7. Wenn eine Methode eine Referenz auf ein unveränderbares Objekt (z.B. Stringobjekt) hat, kann dann die Methode eine Änderung an dem Objekt vornehmen?

a.    Nein, unveränderbare Objekte können von niemandem geändert werden, nachdem sie erzeugt wurden.
b.    Nein, nur der Erzeuger des unveränderbaren Objekts kann es ändern.
c.    Ja, wenn sie eine Referenz auf das unveränderbare Objekt hat, kann sie es ändern.
d.    Ja, aber sie muss, um das zu tun den speziellen "+" Operator verwenden.

8. Kann ein Programmierer (Sie) eine Klasse entwerfen, deren Objekte unveränderbar sind?

a.    Nein, nur ein paar vordefinierte Java-Klassen wie String sind unveränderbar.
b.    Nein, alle vordefinierten Klassen sind unveränderbar und alle vom Programmierer definierten Klassen sind es nicht.
c.    Ja, indem alle Instanzvariablen der Klasse als private deklariert und keine Zugriffsmethoden geschrieben werden.
d.    Ja, indem alle Instanzvariablen und -methoden als private deklariert werden.

9. Wie viele Referenzen kann es auf ein einziges Objekt geben?

a.    Nur eine.
b.    Zwei. Eine vom Aufrufer und eine von der aufgerufenen Methode.
c.    Drei. Die ursprüngliche Referenz und je eine Referenz für den formalen und den aktuellen Parameter.
d.    Es kann eine beliebige Anzahl von Referenzen geben, die in einer beliebigen Anzahl von Variablen und Parametern gehalten werden (solange sie vom korrekten Typ sind).

10. Betrachten Sie das folgende:

String nachricht = "Hello" ;
nachricht = nachricht + " World" ;
Was macht die zweite Anweisung?

a.    Sie fügt die Zeichen World dem Stringobjekt hinzu, das durch nachricht referenziert wird.
b.    Sie erzeugt ein neues Stringobjekt aus dem Originalobjekt, das durch nachricht referenziert wird, und aus einem weiteren Stringobjekt, das World enthält.
c.    Sie ändert das unveränderbare Objekt, das durch nachricht referenziert wird.
d.    Sie ist illegal, da sie versucht ein unveränderbares Objekt zu ändern.

Richtige Antworten:       in Prozent:       Bewertung:   


Inhalt (Sollten Sie gerade von einer anderen Seite hierher zurückgekommen sein oder diese Seite neu geladen haben, kann es sein, dass Sie erneut auf jede Ihrer ausgewählten Antworten klicken müssen, damit das Bewertungsprogramm korrekt arbeitet.)

Um die alten Antworten zu löschen, halten Sie die Strg-Taste gedrückt und laden dann die Seite neu (Firefox). Bei anderen Browsern funktioniert das in Verbindung mit der Umschalt- bzw. Strg+Umschalt-Taste. Beim Internet Explorer 8 muss die Seite verlassen und erneut aufgerufen werden.