ich hab hier ein programm, das ein kuchen objekt erzeugt und dieser kuchen wird dekoriert mit diversen zutaten. einmal soll der gesamtpreis berechnet werden, einmal der preis nur vom kuchen und einmal der preis von nur den optionen.
p
und beim kompilieren kommt folgender fehler:
kann mir wer sagen warum das so is ?
Code:
public abstract class Kuchen {
String beschreibung = "Kuchen";
float preis_kuchen = 0.0F;
float preis_optionen = 0.0F;
public String getBeschreibung() {
return beschreibung;
}
public float getPreis_optionen() {
return preis_optionen;
}
public float getPreis_kuchen() {
return preis_kuchen;
}
public abstract float preis();
}
Code:
public class Kaesekuchen extends Kuchen {
public Kaesekuchen() {
beschreibung = "Käsekuchen";
preis_kuchen += 1.5F;
}
public float preis() {
return 1.5F;
}
}
Code:
public class Sachertorte extends Kuchen {
public Sachertorte() {
String beschreibung = "Sachertorte";
preis_kuchen += 1.80F;
}
public float preis() {
return 1.80F;
}
}
Code:
public abstract class Option extends Kuchen {
public abstract String getBeschreibung();
}
Code:
public class Schokostreusel extends Option {
Kuchen kuchen;
public void Sahne() {preis_optionen +=0.10F;}
public Schokostreusel(Kuchen kuchen) {
this.kuchen = kuchen;
}
public String getBeschreibung() {
return kuchen.getBeschreibung() + ", Schokostreusel";
}
public float preis() {
return 0.10F + kuchen.preis();
}
public float getPreis_optionen() {
return preis_optionen;
}
}
p
Code:
ublic class Marzipanrosen extends Option {
Kuchen kuchen;
public void Sahne() {preis_optionen +=0.15F;}
public Marzipanrosen(Kuchen kuchen) {
this.kuchen = kuchen;
}
public String getBeschreibung() {
return kuchen.getBeschreibung() + ", Marzipanrosen";
}
public float preis() {
return 0.15F + kuchen.preis();
}
public float getPreis_optionen() {
return preis_optionen;
}
}
Code:
public class Rosinen extends Option {
Kuchen kuchen;
public void Sahne() {preis_optionen +=0.15F;}
public Rosinen(Kuchen kuchen) {
this.kuchen = kuchen;
}
public String getBeschreibung() {
return kuchen.getBeschreibung() + ", Rosinen";
}
public float preis() {
return 0.15F + kuchen.preis();
}
public float getPreis_optionen() {
return preis_optionen;
}
}
Code:
public class Sahne extends Option {
Kuchen kuchen;
public void Sahne() {preis_optionen +=0.20F;}
public Sahne(Kuchen kuchen) {
this.kuchen = kuchen;
}
public String getBeschreibung() {
return kuchen.getBeschreibung() + ", Sahne";
}
public float preis() {
return 0.20F + kuchen.preis();
}
public float getPreis_optionen() {
return preis_optionen;
}
}
Code:
public class Main {
public static void main(String[] args) {
Kuchen kuchen1 = new Kaesekuchen();
kuchen1 = new Rosinen(kuchen1); // Käsekuchen mit Rosinen dekorieren
kuchen1 = new Schokostreusel(kuchen1); // Käsekuchen mit Schokostreusel dekorieren
kuchen1 = new Schokostreusel(kuchen1); // Käsekuchen mit Schokostreusel dekorieren
System.out.println(kuchen1.getBeschreibung() + " kostet " +
kuchen1.preis() + " Euro.");
System.out.println("Der Kuchen ohne Zutaten kostet: "+kuchen1.getPreis_kuchen()+" Euro");
System.out.println("Die Optionen alleine ohne Kuchen kosten: "+kuchen1.getPreis_optionen()+" Euro");
}
}
und beim kompilieren kommt folgender fehler:
Main.java:12: cannot find symbol
symbol : method getPreis_optionen()
location: class Kuchen
System.out.println("Die Optionen alleine ohne Kuchen kosten: "+kuchen1.getPreis_optionen()+" Euro");
kann mir wer sagen warum das so is ?