Beginnen wir mit Code zum ersten Mal startenSubklassen Konstruktor ohne einen Parameter - ist das möglich? Wie geht das?
Das ist mein Super
public class Burger {
protected String name;
protected MeatType meat;
protected BreadType bread;
private double basePrice;
private EnumMap<Addition, Integer> additions;
public Burger(String name, MeatType meat, BreadType bread){
this.name = name;
this.meat = meat;
this.bread = bread;
this.basePrice = 3.00;
this.additions = new EnumMap<Addition, Integer>(Addition.class);
}
und dies die Unterklasse von ihr
public class FitBurger extends Burger {
public FitBurger(String name, MeatType meat, BreadType bread){
super(name,meat,bread);
}
}
jedoch erbt, ich will nicht meine Unterklasse einen Konstruktor haben mit dem BreadType-Brot, aber immer noch will ich es behalten die Variable und setzen Sie es auf einen bestimmten Wert. Ich möchte, dass die Superklasse so bleibt wie sie ist.
Kann man das auf irgendeine Weise erreichen?
Rufen 'Super (Name, Fleisch, BreadType.WHATEVER)', und entfernen Sie den Parameter Standard verwenden. –
Sie müssen 'super' mit gültigen Werten für diese drei Parameter aufrufen. Wie viele Parameter Sie im Unterklassenkonstruktor haben, ist irrelevant. –