我想在DrawPanel1.class中使用一个int值,即Gui.class中的int值,如何轻松地将Class值从Class传递给Class文件? 我的int值:
/* Gui.java */
static int gamestate = 1;
我想在一个buttonHandler的DrawPanel.java中将gamestate减少1,如下所示:
/*DrawPanel.java */
class StartNewGameHandler implements ActionListener{
public void actionPerformed( ActionEvent e ){
gamestate--;
}
}
答案 0 :(得分:1)
如果确实想直接访问静态变量,可以使用:
Gui.gamestate--;
但是,我建议你保持变量私有(除了常量),并通过属性访问它们。可变静态变量通常也是一个坏主意。
答案 1 :(得分:0)
如果Gui和DrawPanel在同一个包中,你可以使用
Gui.gamestate--
否则你必须将gamestate声明为public 然后致电
Gui.gamestate--
答案 2 :(得分:0)
你只需要public
:
public static int gamestate = 1;
然后你静静地称呼它:
Gui.gamestate
答案 3 :(得分:0)
在类之间传递数据的标准OOP方法是使用getter / setter:
class Gui {
private int gameState;
public void setGameState(int gameState) {
this.gameState = gameState;
}
}
当然,您可以使用静态变量,但这通常被认为是不好的做法。