gpt4 book ai didi

Java "global"对象

转载 作者:行者123 更新时间:2023-12-04 04:58:08 25 4
gpt4 key购买 nike

我正在用 Java 编写游戏。有类似的东西是不好的做法

public class Constants
{
public static Mouse mouse;
public static Keyboard keyboard;
}

(鼠标和键盘是返回输入的对象)

还是最好将具有这些字段的对象传递给需要它们的对象?

谢谢。

最佳答案

一个 singleton pattern是你所追求的。

特别关注The solution of Bill Pugh部分 - 这是一个线程安全的延迟初始化单例的非常干净的实现,它利用 Java 语言规范使其线程安全。

单例模式现在通常不受欢迎,因为它使单元测试几乎不可能。通常这是通过依赖注入(inject)框架来完成的,比如 GuiceSpring .

根据您运行应用程序的位置,通常有某种“上下文”可以存储单例 - 例如 ServletContext在 Web 应用程序中。这为您提供了两全其美的体验。

关于Java "global"对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16502540/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com