我正在玩代码并且今天在课堂上学习了继承,不能让它编译并且不知道什么是错的,只是说它找不到C中的行colorfeathers = c
public class Bird extends inheritance{
private String colorFeathers;
public Bird(String c, String n){
super("Bird:" , n, 2, 0);
colorFeathers = c;
}
public String GetColor(){return colorFeathers;}
public void setColors(){colorFeathers = c;}
public String toString(){
String hold = super.toString();
hold += "color:" + colorFeathers;
return hold;
}
}
答案 0 :(得分:1)
问题出在public void setColors(){colorFeathers = c;}
您没有将c
作为字符串传递,因此变量在setColors method
答案 1 :(得分:0)
你错过了这里的参数
public void setColors(String c){colorFeathers = c;}
假设超类中的所有其他东西都没问题
答案 2 :(得分:0)
此功能中的c
public Bird(String c, String n){
super("Bird:" , n, 2, 0);
colorFeathers = c;
}
仅存在于该功能中。功能完成后,c
不再存在。因此,这次调用c
变量
public void setColors(){colorFeathers = c;}
无法工作。
也许你还想让setColors
拥有c
参数?喜欢这个
public void setColors(String c){colorFeathers = c;}