从静态上下文引用的非静态方法
Non-static method referenced from a static context
我有两个相同的错误,它们如下所示:
class FBox {//...}
class FBPlayer
{
//Initialized instances
FBox game = new FBox();
**FBPillar pillar = new FBPillar();**
**FBObjects objects = new FBObjects();**
//Lots o Properties...
public boolean get_Alive() { return this.b_PlayerAlive; }
public void set_Alive(boolean alive) { this.b_PlayerAlive = alive; }
//My Error ridden Method
public void checkCollision()
{
if(get_YPos() >= **objects**.get_Ground())
^My Error was incorrect name for my instance
{
set_Alive(false);
}
else if(get_Bounds().intersects(**pillar**.get_Bounds()))
^My Error was incorrect name for my instance
{
set_Alive(false);
}
}
class FBPillar
{
public int get_Bounds() {return 'the variable'; }
}
class FBObjects
{
public int get_Ground() {return 'the variable'; }
}
错误在if语句和else if语句
当我 运行 它 returns 错误:
FBox.java:178: error: non-static method get_Bounds() cannot be referenced from a static context
else if(get_Bounds().intersects(**FBPillar**.get_Bounds()))
if 语句的相同错误,但带有 FBObjects.get_Ground())
^
你说的是谁的界限?你可能是说
if (get_Bounds().intersects(pillar.get_Bounds())) {
…
}
我还要补充一点
FBPlayer player = new FBPlayer();
表示一个播放器包含一个播放器,这可能不是您想要的。
我有两个相同的错误,它们如下所示:
class FBox {//...}
class FBPlayer
{
//Initialized instances
FBox game = new FBox();
**FBPillar pillar = new FBPillar();**
**FBObjects objects = new FBObjects();**
//Lots o Properties...
public boolean get_Alive() { return this.b_PlayerAlive; }
public void set_Alive(boolean alive) { this.b_PlayerAlive = alive; }
//My Error ridden Method
public void checkCollision()
{
if(get_YPos() >= **objects**.get_Ground())
^My Error was incorrect name for my instance
{
set_Alive(false);
}
else if(get_Bounds().intersects(**pillar**.get_Bounds()))
^My Error was incorrect name for my instance
{
set_Alive(false);
}
}
class FBPillar
{
public int get_Bounds() {return 'the variable'; }
}
class FBObjects
{
public int get_Ground() {return 'the variable'; }
}
错误在if语句和else if语句 当我 运行 它 returns 错误:
FBox.java:178: error: non-static method get_Bounds() cannot be referenced from a static context
else if(get_Bounds().intersects(**FBPillar**.get_Bounds()))
if 语句的相同错误,但带有 FBObjects.get_Ground()) ^
你说的是谁的界限?你可能是说
if (get_Bounds().intersects(pillar.get_Bounds())) {
…
}
我还要补充一点
FBPlayer player = new FBPlayer();
表示一个播放器包含一个播放器,这可能不是您想要的。