"Grundkurs Programmieren in Java - (5. Auflage, 2010)"
2001-2010, Carl Hanser Verlag

Lösungsvorschlag zu Aufgabe 9.15 (Version 3.0)

(c) 2001-2010 D. Ratz, J. Scheffler, D. Seese, J. Wiesenberger

a)

Programmausgabe:
  E:\hiwi\temp>java AutoTest
  Das Auto faehrt
Grund:
Polymorphismus (=dynamische Bindung). Nicht der deklarierte, sondern der tatsächliche Typ des Objektes ist relevant. Bei der dynamischen Bindung (auch dynamic- oder late- oder auch runtime-binding genannt) muss der Interpreter zur Laufzeit den Typ des Objektes feststellen können.

Quelltext: AutoTest.java

b)

Programmausgabe:
  E:\hiwi\temp>java ElchTest
  Wert von a ist: 0
  Wert von a ist: 0
  Wert von b ist: 1
  Wert von b ist: 1
  Wert von c ist: 0
  Wert von c ist: 1
Grund:
Der Attributzugriff unterliegt nicht der dynamischen Bindung.

Quelltext: ElchTest.java