Java中的全局访问

Ste*_*eve 5 java singleton design-patterns global-variables

在Java中,没有像C++那样的全局访问.那么如果他们想要创建一个可以从任何类访问的对象容器,他们会怎么做?或者说一个拥有全局值的java bean.

例如,如果我正在制作电梯模拟器,那么所有人都需要知道的字段int numElevators必须放在某个地方吗?与电梯的集合对象相同Elevators[] elevators.

我可以想到一种方法是创建一个单例类来存储所有这些全局变量.然后使用静态方法提供来自任何类的访问.但是有更优雅的解决方案吗?

Bri*_*new 4

我希望 a 的实例Building具有 的集合Elevators。我认为项目中很少有真正全球化的东西,您通常可以找到一些应该包含和分发这些知识的管理实体。

通过将其绑定到这样的实体中,您可以a)更轻松地控制访问和更改/重构b)模拟它并使测试更容易。