zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Antwort:

Ein Array von Waren-Objekten

public class StoreArray
{

  public static void main(String[] args)
  {
    Goods[] inventory =  new Goods[10];
    inventory[0] =
      new Goods("bubble bath", 1.40);
    inventory[1] =
      new Food ("ox tails", 4.45, 1500);
    inventory[2] =
      new Book ("Emma", 24.95, "Austen");
    inventory[3] =
      new Toy  ("Leggos", 54.45, 8);

    System.out.println( inventory[0] );
    System.out.println( inventory[1] );
    System.out.println( inventory[2] );
    System.out.println( inventory[3] );
  }
}
Abbildung eines Arrays

Hier ist ein modifiziertes Testprogramm, das ein Array verwendet:

Da jede Subklasse über eine «Ist ein-» Beziehung mit der Klasse Goods verfügt, kann ein Array vom Typ Goods[] für jede von ihnen verwendet werden. Das Array inventory 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 Goods oder auf ein Objekt vom Typ einer der Subklassen verweisen kann.

Hier ist der Output des Programms:

Artikel: bubble bath Preis: 1.4
Artikel: ox tails Preis: 4.45 1500.0 Kalorien
Artikel: Emma Preis: 24.95 Autor: Austen
Artikel: Leggos 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] );