通过其getter方法在同一个类的另一个方法中使用私有属性

时间:2014-06-29 11:38:42

标签: java oop getter

我对OOP的概念非常陌生,对于一个项目,我必须与2名玩家进行纸牌游戏。我创建了一个名为Player的类,它有一个名为playerNumber的私有属性,还有许多其他属性。我创建了一个名为playTurn的方法,它需要使用Player的私有属性,例如playerNumber。

我试着像这样使用它:

public static void playTurn(){  
    System.out.println("It's Player " + this.getPlayerNumber() + "'s turn.");
}

但Eclipse会问我要么使getter方法getPlayerNumber()为静态,要么将私有属性playerNumber设为静态。

是否可以在没有静态的情况下保留私有PlayerNumber并仍在另一个方法中使用该属性,但是在同一个类中?

1 个答案:

答案 0 :(得分:3)

您无法从静态上下文中引用非静态方法或变量。

看起来playTurn()不应该是静态的,因为它需要访问Player的实例。

请参阅this回答