Konstruktor
Falls über diesem Text keine PDF-Präsentation zu sehen ist, wurde diese von Ihrem Browser direkt runtergeladen (wenn Sie z.B. mit Safari@Mac surfen). Sie könnnen zum Download auch hier klicken: Direktdownload PDF-Präsentation
Übungen
Alle Übungen finden Sie in der Materialsammlung (dort auch alle zusätzlichen Dateien wie Bilder, Klassendiagramme oder HTML-Vorlagen!).
Die aktuelle Übung können Sie hier als txt-File herunterladen.
***** Übungen: PHP/OOP - Konstruktor *****
PHP/OOP_4-1: Konstruktor verwenden
Schreiben Sie das folgende Listing so um, dass der initiale Kontostand (mit dem Wert 0) per Konstruktor erzeugt wird.
PHP-Codeclass Kunde { // Attribute public $kontostand = 0; // Methoden function kontostandSetzen() { $this->kontostand = 400; } } $kunde = new Kunde; echo "Alter Kontostand: " . $kunde->kontostand . "<br />\n"; // neuen Kontostand durch Methode kontostandSetzen festlegen lassen // METHODE HIER EINFÜGEN echo "Neuer Kontostand : " . $kunde->kontostand;
PHP/OOP_4-2: Konstruktor verwenden
Ergänzen Sie das folgende Listing um einen Konstruktor, der unter Verwendung der Objektattribute folgende Meldung ausgibt:
"Neues Objekt wurde erzeugt (Kundennummer: 1234, Kundenname: Schmitt)."
Beachten Sie dabei, dass beim Instanziieren eines Objektes die Attribute noch keine Werte haben. Dieses Problem müssen Sie lösen, damit der Konstruktor Werte ausgeben kann.
Bitte verändern Sie außer dem Konstruktor NICHTS im Listing.
PHP-Codeclass Kunde { // Attribute public $name; public $kundennummer; // Methoden // HIER KONSTRUKTOR public function kundendatenAusgeben() { // diese Funktion ist eigentlich nicht notwendig, da gemaess Aufgabenstellung der Konstruktor schon diese Ausgabe erzeugt. echo "<p>Der Kunde mit der Kundennummer " . $this->kundennummer . " heißt " . $this->name . ".</p>\n"; } }
PHP/OOP_4-3: Konstruktor mit Berechnung
Programmieren Sie die im Klassendiagramm 10phpoop/oopphp04_bild_artikel_mitkonstruktor.png dargestellte Klasse "Artikel". Jedes Objekt erhält bei seiner Erzeugung einen Nettopreis und einen Steuersatz. Im Konstruktor werden diese Werte den Objektattributen zugewiesen; außerdem wird der Bruttopreis berechnet.
Die Methode endpreisAusgeben() gibt den berechneten Preis in Form eines solchen Satzes aus: "Der Bruttopreis des Artikels beträgt 119 Euro (Nettopreis: 100 Euro, Steuersatz: 19 Prozent)".
_Zusatzaufgabe_
Erweitern Sie die Klasse so, dass auch der Artikelname beim Instanziieren des Objekts übergeben wird und entsprechend einem Objektattribut zugewiesen wird. Berücksichtigen Sie dieses Attribut bei der Ausgabe durch die Methode endpreisAusgeben ("Der Bruttopreis des Artikels 'Badeschlappen' beträgt ...").
