/** * Uebung 3, Aufgabe 3 */ public class PizzaBaecker { public static void main(String[] args) { /* * Neues Pizza Objekt initialisieren: */ Pizza hawai = new Pizza(); /* * Den neuen Basispreis festlegen: */ hawai.preis = 3.0F; // float-Konstante /* * Platz fuer drei Zutaten schaffen. * * Arrays mit "nicht-primitiven" Elementen: * http://www.galileocomputing.de/openbook/javainsel5/javainsel03_007.htm#Rxx747java03007040001011F0481FF */ hawai.zutaten = new Zutat[3]; /* * Drei neue Zutaten anlegen (initialisieren): */ for (int i = 0; i < 3; i++){ hawai.zutaten[i] = new Zutat(); } /* * Zutaten mit Werten belegen. */ hawai.zutaten[0].name = new String("Ananas"); hawai.zutaten[0].preis = 0.5f; hawai.zutaten[1].name = new String("KŠse"); hawai.zutaten[1].preis = 0.4f; hawai.zutaten[2].name = new String("Schinken"); hawai.zutaten[2].preis = 0.7f; /* * Endpreis ausrechnen: */ float endpreis = hawai.preis; for (int i = 0; i < 3; i++){ endpreis += hawai.zutaten[i].preis; } /* * Endpreis ausgeben: */ System.out.println("Eine Pizza Hawai, kostet: " + endpreis); /* * Ab hier Aufgabe 4: */ PizzaCalzone calzone = new PizzaCalzone(); System.out.println("Zusammengeklappt? " + calzone.zusammengeklappt); /* * Ab hier Aufgabe 5: */ hawai = new PizzaCalzone(); // Problem? Nein, denn ein PizzaCalzone Objekt "erbt" auch den Typ "Pizza" // calzone = new Pizza(); // Problem? Ja, denn ein Pizza Objekt hat nur "Pizza" Eigenschaften /* * Aufgabe 6: * * Hilfestellung: Was ist eine abstrakte Klasse? * http://www.galileocomputing.de/openbook/javainsel5/javainsel06_009.htm#Rxx747java06009040001EA1F04F100 * * Lšsung: Von abstrakten Klassen kšnnen keine Objekte instanziiert werden. */ } }