以下是小程序中的一段游戏代码,但出现错误:
意外类型
所需变量的发现值。
实际上,该错误是由于我在方法重绘中所分配的,但是应该怎么办?
任何帮助将非常感激。
public class subclass of JApplet{
JApplet jp;
int yPos=230;
public void check{
if(jp.getX()>160 && jp.getY()<200)
repaint();
}
public void repaint(){
jp.getX()=jp.getWidth()-10;
jp.getY()=yPos;
}
}
最佳答案
问题在于这两行:
jp.getX()=jp.getWidth()-10;
jp.getY()=yPos;
我假设
getX
和getY
返回一些x
和y
变量。但是,您不能以这种方式进行更改,需要创建一个setter方法或直接对其进行访问并进行修改。就像是 :
public void setX(int x)
{
this.x = x;
}
那你会做
jp.setX(someValue);
或者,如果该字段不是私有的,则可以直接执行以下操作:
jp.x = someValue;
错误消息“必需变量,找到的值”是指
getX
返回的内容。赋值的左侧必须是一个变量以保存该值,但是在您的情况下,它是一个值(由getter返回),因此会出现错误消息。