erstellt 28.02.04; überarbeitet 15.03.04, 22.02.05, 17.07.06, 28.07.09, 25.01.11, 03.07.18, 20.05.2019, 11.07.22, 27.03.23, 15.02.24;


Kapitel 50 Programmieraufgaben

Aufgabe 1 — Old Scotch

Wir erstellen eine Klasse Artikel mit den privaten Instanzvariablen String artikelNr, String bezeichnung, double einkaufspreis, int jahre und double Prozent. Wir deklarieren zwei Konstanten:

final double  HANDELSSPANNE = 0.6;   // 60% des Einkaufspreises
final double  MWST          = 0.19 ; // 19%

Wir erstellen einen Konstruktor:

Dann schreiben wir eine öffentliche anzeigen() Methode, die die Artikelinformationen ausgibt und eine öffentliche Methode zum Berechnen des Verkaufspreises:

public double berechneVerkaufspreis()

Der Verkaufspreis ergibt sich aus der Summe von Einkaufspreis und Handelsspanne zuzüglich Mehrwertsteuer.

Wir erzeugen in der Klasse ArtikelTester zwei Artikelobjekte und testen die Methoden.

Die Ausgabe des Programms sieht dann z.B. folgendermaßen aus:

SC123-F "DUFFY" EK: 10.0 VK: 19.04 Euro Lagerzeit: 3 Monate
SC347-A "GLEN MORANGIE" EK: 49.0 VK: 93.296 Euro Lagerzeit: 15 Monate

Zurück zum Inhaltsverzeichnis.


Aufgabe 2 — Sonderposten

Wir leiten die Klasse Sonderposten von der Klasse Artikel ab. Die Subklasse erweitert die Superklasse, um die private Instanzvariable rabatt.

Wir erstellen unter Verwendung des Konstruktors der Superklasse einen Konstruktor, der die Objekte der Subklasse initialisiert. Die Initialisierung der Instanzvariablen rabatt wird vom Konstruktor je nach Lagerzeit übernommen. Bei einer Lagerzeit größer 12 Monate wird ein Rabatt auf dem Verkaufspreis von 30 Prozent gewährt. Andernfalls beträgt der Rabatt 10 Prozent.

Wir schreiben eine Methode anzeigen() für die Subklasse, die die anzeigen() Methode der Superklasse überschreibt.

Wir schreiben eine Methode berechneVerkaufspreis(), die ebenfalls die Methode der Superklasse überschreibt.

Die Ausgabe des Programms sieht dann z.B. ungefähr wie folgt aus:

SC123-F "DUFFY" EK: 10.0 VK: 19.04 Euro Lagerzeit: 3 Monate

Sonderposten:
SC347-A "GLEN MORANGIE" EK: 49.0 VK: 65.3072 Euro Lagerzeit: 15 Monate
(VK <alt>: 93.296 Euro Rabatt: 30%)

Zurück zum Inhaltsverzeichnis.


Ende der Aufgaben