我有一个class无法访问会话对象的工具。我只想初始化这个 util 类一次,login并希望在整个应用程序中获取该实例。
在这里,每个用户都需要有自己的那个 util 类的实例,如何实现这一点。
请帮我
我有一个class无法访问会话对象的工具。我只想初始化这个 util 类一次,login并希望在整个应用程序中获取该实例。
在这里,每个用户都需要有自己的那个 util 类的实例,如何实现这一点。
请帮我
你在寻找单例模式吗?
private static MyClass instance;
private MyClass(){}
    public static MyClass getInstance() { 
        if (instance != null) {
            return instance; 
        } else {
            return new MyClass();
        }
    }
    public static void setInstance(MyClass inst) {
        instance = inst;
    }
    使用工厂模式怎么样。然后您可以将参数传递给工厂方法并为每个用户返回一个新实例。
我同意@GanGnaMStYleOverFlow 关于单例,但想提供更好的实现版本:
public class MyClass {
    private static MyClass instance;
    private MyClass() {}
    public static synchronized MyClass getInstance() { 
        if (instance != null) {
            instance = new MyClass();
        }
        return new MyClass();
    }
}
这个类不能直接实例化,因为构造函数是私有的。您不能创建此类的 2 个实例,因为它由 管理getInstance()。getInstance()这个实现是线程安全的,因为synchronized.