gpt4 book ai didi

java - 为什么将单例对象设为私有(private)而不是公开

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

在 Java 中,您可以像这样创建单例:

public class SingleObject {

//create an object of SingleObject
private static SingleObject instance = new SingleObject();

//make the constructor private so that this class cannot be
//instantiated
private SingleObject(){}

//Get the only object available
public static SingleObject getInstance(){
return instance;
}
}

是否有任何原因导致您无法公开实例并免除 getInstance?

最佳答案

现代(我认为是从 Java 1.5 开始)在 Java 中创建单例的规范方法,无耻地复制自 this answer ,它有更多的背景和更大的示例,它替换了您问题中的代码:

public enum SingleObject {
INSTANCE;
}

直接回答你的问题:你问了一个错误的问题,答案是,它不应该是你给出的任何一个选择。

关于java - 为什么将单例对象设为私有(private)而不是公开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34400004/

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