Ich lerne JAVA und zur Zeit habe ich ein Problem mit der Verwendung von Super. Aus irgendeinem Grund zeigt sie einen Fehler:Fehler mit Super. in JAVA
Exception in thread "main" java.lang.Error: Unresolved compilation problems: The field Animal.n is not visible The field Animal.m is not visible*
Wie kann ich das Problem beheben? Ich weiß, dass String n und int m auf privat gesetzt sind, da ich versuche, das "super" zu verwenden. Vielen Dank im Voraus. Der Teil des Codes unter i Problem habe mit dem „Super (n, m)
public class Zoo
{
public static void main(String[] args)
{
Animal[] cat= new Animal[5];
BigAnimal big = new BigAnimal("Roro",20,true,true);
cat[0] = new Animal ("Mauie",5,true);
cat[1] = new Animal ("Frankie",7,false);
cat[2] = new Animal ("Zo-Zo",8,false);
cat[3]= new Animal ("Alice",12,true);
cat[4]= big;
System.out.println(cat[0].getName());
System.out.println(cat[0].something(10));
}
}
class Animal
{
private String n;
private int m;
public Animal(String name,int meals, boolean doesitbite)
{
n=name;
m=meals;
}
}
class BigAnimal extends Animal
{
boolean doesitlove;
public BigAnimal (String name, int meals, boolean doesitbite, boolean doesitlove)
{
super(n,m);
doesitlove=true;
}
}
'Tier' hat keinen Konstruktor, der nur 2 Parameter nimmt. –
* "Die Zeile, die falsch (?) Ist, ist im folgenden Code fett geschrieben." * Nein, ist es nicht. * "Der Teil im Code unten ist fett geschrieben, wie ich bereits erwähnt habe" * Nein, es ist nicht, wie ich bereits erwähnt habe. :-) –
Ersetzen Sie 'super (n, m);' mit 'super (Name, Mahlzeiten, doesitbite);' –