Hallo,
habe mal wieder ein Problem, an dem ich nicht weiterkomme. Bin halt noch Anfänger in Sachen Java...
Die Klasse "Kasse" funktioniert nicht richtig. Habe mal meinen Code gelöscht, um niemand zu verwirren.
Diese Klasse und die Methode bezahlen() sind für die Ausgabe mit verantwortlich.
Leider weiß ich nicht, wie das funktionieren soll...
Hier mal der Code:
Ich bekomme immer die Fehlermeldung:
bezahlen() in Kasse cannot be applied to (Warenkorb)
Das Programm sollte folgende Ausgabe realisieren:
Rasierer 29.9 (4.78 MwSt.)
36 Monate Garantie
Schwäbische Spätzle 5.99 (0.96 MwSt.)
Harry Potter 1 15.0 (1.05 MwSt.)
Schinkenwurst 2.99 (0.48 MwSt.)
Summe inkl. MwSt. 61.15
Ende Einkauf 1
Harry Potter 5 26.0 (1.82 MwSt.)
Harry Potter 4 22.0 (1.54 MwSt.)
Harry Potter 3 19.0 (1.33 MwSt.)
Harry Potter 2 17.0 (1.19 MwSt.)
Harry Potter 1 15.0 (1.05 MwSt.)
Summe inkl. MwSt. 105.93
Ende Einkauf 2
Gurke 0.69 (0.11 MwSt.)
Stereoanlage 199.0 (31.84 MwSt.)
24 Monate Garantie
Summe inkl. MwSt. 231.64
Ende Einkauf 3
Es wäre sehr nett, wenn sich mal einer von euch Könnern mein Programm anschauen könnte.
Schon mal vorab danke für jede Hilfe.
Gruß Andreas
habe mal wieder ein Problem, an dem ich nicht weiterkomme. Bin halt noch Anfänger in Sachen Java...
Die Klasse "Kasse" funktioniert nicht richtig. Habe mal meinen Code gelöscht, um niemand zu verwirren.
Diese Klasse und die Methode bezahlen() sind für die Ausgabe mit verantwortlich.
Leider weiß ich nicht, wie das funktionieren soll...
Hier mal der Code:
Code:
import java.util.*;
public class Supermarkt {
public static void main(String[] args) {
Lager aldiLager=new Lager(); //Anlegen des Lagers
/* Füllen des Lagers */
Buch harrypotter1=new Buch("Harry Potter 1",15);
aldiLager.wareneingang(harrypotter1);
Buch harrypotter2=new Buch("Harry Potter 2",17);
aldiLager.wareneingang(harrypotter2);
Buch harrypotter3=new Buch("Harry Potter 3",19);
aldiLager.wareneingang(harrypotter3);
Buch harrypotter4=new Buch("Harry Potter 4",22);
aldiLager.wareneingang(harrypotter4);
Buch harrypotter5=new Buch("Harry Potter 5",26);
aldiLager.wareneingang(harrypotter5);
Elektronikartikel stereoanlage=new Elektronikartikel("Stereoanlage",199,24);
aldiLager.wareneingang(stereoanlage);
Elektronikartikel rasierer=new Elektronikartikel("Rasierer",29.90,36);
aldiLager.wareneingang(stereoanlage);
Lebensmittel gurke=new Lebensmittel("Gurke",0.69,"20031201");
aldiLager.wareneingang(gurke);
Lebensmittel spaetzle=new Lebensmittel("Schwäbische Spätzle",5.99,"20040101");
aldiLager.wareneingang(gurke);
Lebensmittel schinkenwurst=new Lebensmittel("Schinkenwurst",2.99,"20041208");
aldiLager.wareneingang(schinkenwurst);
/*********************/
/* Einkauf 1 */
Warenkorb meinEinkauf=new Warenkorb();
meinEinkauf.hineinlegen(schinkenwurst);
meinEinkauf.hineinlegen(harrypotter1);
meinEinkauf.hineinlegen(spaetzle);
meinEinkauf.hineinlegen(rasierer);
Kasse.bezahlen(meinEinkauf);
System.out.println("Ende Einkauf 1\n");
/*************/
/* Einkauf 2 */
Warenkorb einAndererEinkauf=new Warenkorb();
einAndererEinkauf.hineinlegen(harrypotter1);
einAndererEinkauf.hineinlegen(harrypotter2);
einAndererEinkauf.hineinlegen(harrypotter3);
einAndererEinkauf.hineinlegen(harrypotter4);
einAndererEinkauf.hineinlegen(harrypotter5);
Kasse.bezahlen(einAndererEinkauf);
System.out.println("Ende Einkauf 2\n");
/*************/
/* Einkauf 3 */
Warenkorb nochEinEinkauf=new Warenkorb();
nochEinEinkauf.hineinlegen(stereoanlage);
nochEinEinkauf.hineinlegen(gurke);
Kasse.bezahlen(nochEinEinkauf);
System.out.println("Ende Einkauf 3\n");
/*************/
}
}
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++ HIER IST DAS PROBLEM: +++++++++++++++++++++++++++++++++++++++
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
class Kasse{
}
class Produkt {
//Variablen
private String name;
private double preis, mwst;
//Konstruktor
Produkt(String name, double preis, double mwst) {
this.name = name;
this.preis = preis;
this.mwst = mwst;
}
}
class Lebensmittel extends Produkt{
private String haltbarkeitsdatum;
public Lebensmittel(String name,double preis,String haltbarkeitsdatum){
super(name,preis,0.16);
this.haltbarkeitsdatum=haltbarkeitsdatum;
}
}
class Elektronikartikel extends Produkt{
private int garantie;
public Elektronikartikel(String name,double preis,int garantie){
super(name,preis,0.16);
this.garantie=garantie;
}
public int getGarantie(){ return(garantie); }
}
class Buch extends Produkt{
public Buch(String name,double preis){
super(name,preis,0.07);
}
}
class Warenkorb {
private Vector warenkorb=new Vector();
public void hineinlegen(Produkt prod){ warenkorb.addElement(prod); }
public void herausholen(Produkt prod){ warenkorb.remove(prod); }
public int anzahlProdukte(){ return(warenkorb.size()); }
public Produkt produkt(int i){ return((Produkt)warenkorb.elementAt(i)); }
}
class Lager {
private Vector lager=new Vector();
public void wareneingang(Produkt prod){ lager.addElement(prod); }
public void warenausgang(Produkt prod){ lager.remove(prod); }
}
bezahlen() in Kasse cannot be applied to (Warenkorb)
Das Programm sollte folgende Ausgabe realisieren:
Rasierer 29.9 (4.78 MwSt.)
36 Monate Garantie
Schwäbische Spätzle 5.99 (0.96 MwSt.)
Harry Potter 1 15.0 (1.05 MwSt.)
Schinkenwurst 2.99 (0.48 MwSt.)
Summe inkl. MwSt. 61.15
Ende Einkauf 1
Harry Potter 5 26.0 (1.82 MwSt.)
Harry Potter 4 22.0 (1.54 MwSt.)
Harry Potter 3 19.0 (1.33 MwSt.)
Harry Potter 2 17.0 (1.19 MwSt.)
Harry Potter 1 15.0 (1.05 MwSt.)
Summe inkl. MwSt. 105.93
Ende Einkauf 2
Gurke 0.69 (0.11 MwSt.)
Stereoanlage 199.0 (31.84 MwSt.)
24 Monate Garantie
Summe inkl. MwSt. 231.64
Ende Einkauf 3
Es wäre sehr nett, wenn sich mal einer von euch Könnern mein Programm anschauen könnte.
Schon mal vorab danke für jede Hilfe.
Gruß Andreas