我正在用Java创建游戏。我有这个导演课,它设置我的游戏线程,主要处理游戏的运作方式。该类永远不应该也不会被多次实例化。类中的变量是否应该是静态变量?我很好奇java编码约定(如果不是所有其他面向对象的语言)将是这样的。
谢谢!
答案 0 :(得分:1)
不是。
您所关注的是Singleton设计模式,其中成员变量不一定是静态的。
答案 1 :(得分:1)
不,成员变量不应该是static
。唯一相关的是,您需要一个Director
课程的实例来管理您的工作,根据您的代码,该工作可能是static
,也可能不是Director
。
现在,如果您不需要从代码周围访问class Director {
private static Director director;
private Director() {
...
}
public static Director getInstance() {
if (director == null)
director = new Director();
return director;
}
}
实例,那么您可以在某处保留实例,否则singleton模式可能会有用。这是一种管理可从代码中的任何位置访问的类的单个实例的模式。
类似的东西:
a=`echo hello`
echo $a