gpt4 book ai didi

java - 使用 JAVA 服务加载器的单例设计模式

转载 作者:行者123 更新时间:2023-12-02 08:49:05 26 4
gpt4 key购买 nike

我一直在寻找 my question on service loaders 的答案在网络上发现了一个使用单例设计模式的解决方案。

我根据该模式实现了我的程序,它给了我预期的输出。

但是关于单例设计模式我还有一些要点需要澄清。

为什么我们在设计模式中使用私有(private)静态变量和静态方法?

这是我根据模式设计的类。

public class SingletonDesignPattern {

private static SingletonDesignPattern singletonDesignPattern;
private ServiceLoader<Cipher> serviceLoader;

private SingletonDesignPattern() {

serviceLoader = ServiceLoader.load(Cipher.class);

}

public static SingletonDesignPattern getInstance() {

if (singletonDesignPattern == null)
singletonDesignPattern = new SingletonDesignPattern();

return singletonDesignPattern;

}
}

我发现我们使用静态方法是因为我们不在任何其他类中创建此类的实例。

除了我上面提到的之外,任何能够说明使用静态私有(private)变量和静态方法的目的的解释都值得赞赏。

最佳答案

单例模式的目的是只创建该类的一个实例并在任何地方使用它。它是私有(private)的,因为我们不希望它被多次创建。它是静态的,因为我们希望在任何地方使用相同的创建实例。

关于java - 使用 JAVA 服务加载器的单例设计模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60900115/

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