zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Antwort:

Ein Array von Waren-Objekten

Abbildung eines Arrays
public class KaufhausTester2
{

  public static void main ( String[] args )
  {
    Waren[] inventar =  new Waren[10];
    inventar[0] = new Waren( "Tube", 1.40 );
    inventar[1] = new Lebensmittel ( "Milch", 1.61, 650 );
    inventar[2] = new Buecher ( "Emma", 24.95, "Austin" );
    inventar[3] = new Spielwaren  ( "Lego", 54.45, 8 );

    System.out.println( inventar[0] );
    System.out.println( inventar[1] );
    System.out.println( inventar[2] );
    System.out.println( inventar[3] );
  }
}

Hier ist ein modifiziertes Testprogramm, das ein Array verwendet:

Da jede Subklasse über eine «Ist ein-» Beziehung mit der Klasse Waren verfügt, kann ein Array vom Typ Waren[] für jede von ihnen verwendet werden. Das Array inventar hat zehn Zellen, wenn auch das Programm nur 4 davon verwendet.

Jede Zelle des Arrays enthält eine Referenzvariable, die auf ein Objekt vom Typ Waren oder auf ein Objekt vom Typ einer der Subklassen verweisen kann.

Hier ist der Output des Programms:

Artikel: Tube Preis: 1.4$
Artikel: Milch Preis: 1.61$ 650.0 Kalorien
Artikel: Emma Preis: 24.95$ Autor: Austin
Artikel: Lego Preis: 54.45$ Mindestalter: 8

FRAGE 14:

(Rückblick:) Führt die Zeile:

System.out.println( inventar[1] );

dieselbe toString() Methode aus wie diese Zeile:

System.out.println( inventar[2] );