所以我试图从类玩家那里获得Speed的价值并将其转移到Class Player1中的变量newSpeed。但是我仍然无法让玩家的速度将值传递给类Player1的newSpeed。 newspeed的值应该是2,但它仍然是0.我已经坚持了2个多小时。我真的需要帮助。
P / S:我没有包括我的Driver类,因为我相信这个问题就在这里。但是,如果你需要,我仍然可以在这里包括它们班主任:
public abstract class Players {
protected static int speed=2;
private int x;
private int y;
public abstract void resetLocation();
public int getSpeed()
{
return speed;
}
}
Class Player 2
public class Player2 extends Players {
private int newSpeed=1;
Player2() {
super.speed=this.newSpeed;
}
public int getSpeed()
{
return newSpeed;
}
/**
*
* Function to set how many steps can the player goes.
*/
public void setMovementSpeed(int speed)
{
this.newSpeed=speed; //this is for another functionality.
}
}
主要:
public class Main {
public static void main(String[] args)
{
Player2 p2 = new Player2();
System.out.println(p2.getSpeed());
}
}
这就是我的尝试。
答案 0 :(得分:0)
如下所示更改Player2以获得预期结果
Player2() {
newSpeed = speed;
}
在Player2构造函数中,您将实例值设置为超级实例值,因此您必须更改条件以获得预期结果