我正在尝试使用getters / setters在子类中设置颜色,但是存在编译错误。
//world.java
import java.awt.Color;
public class world {
private Color color;
public Color getColor() {
return color;
}
public void setColor(Color color) {
this.color = color;
}
}
//object.java
public class object extends world {
public object{
setColor(new world.Color(255,0,0); //compile error
}
}
我可以通过导入java.awt.Color
子项并键入轻松解决此问题setColor(new Color(255,0,0)
,但是当它已经导入到父项中时,它不是多余的吗?我还尝试了其他语法,例如,setColor(world.setColor(new Color(255,0,0)))
但是给出了不同的错误。正确执行此操作的正确语法是什么?
只是简单
setColor(new Color(255,0,0); //no compile error
(您必须import
在使用类的每个文件中都有该语句...)
说明:
当前的类扩展了world
-这意味着setColor()方法“就在那儿”而无需再次声明。这将设置color
的的instanct领域world
类只是正常,但没有明确指定...方法和字段使用static修饰符总是涉及到类本身,而不是该类的实例
为什么setColor(world.setColor(new Color(255,0,0)))
不工作?
该语法用于访问该类的静态方法world
-但是这种方法不存在。您拥有的是一个非静态方法,在这种情况下,这是完全合适的,因为颜色值分别与该类的每个实例相关。因此,在这种情况下,world.setColor()语法无效。
根据游戏评论,GameObject换成了世界
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句