gpt4 book ai didi

java - 在java中声明实例关键字

转载 作者:搜寻专家 更新时间:2023-11-01 01:17:09 24 4
gpt4 key购买 nike

我看到在我的 ENUM java 代码声明中声明了一个“instance”关键字。有人可以解释一下这个关键字是如何工作的吗?

Java 代码:-

public enum TodoDao {
instance;

private Map<String, Todo> contentProvider = new HashMap<String, Todo>();

private TodoDao() {
Todo todo = new Todo("1", "Learn REST");
todo.setDescription("Read http://www.vogella.com/articles/REST/article.html");
contentProvider.put("1", todo);
todo = new Todo("2", "Do something");
todo.setDescription("Read complete http://www.vogella.com");
contentProvider.put("2", todo);
}
public Map<String, Todo> getModel(){
return contentProvider;
}
}

最佳答案

根据 Joshua Bloch 的说法,这是实现 GoF 单例模式的最佳方式,请参阅相关问题: What is an efficient way to implement a singleton pattern in Java?

不过,根据 java 风格指南,它应该全部大写,即 INSTANCE

要使用它,您可以从代码的任何部分调用以下内容:

Map<String, Todo> todos = TodoDao.INSTANCE.getModel();

而且您可以确定初始化只会发生一次。

关于java - 在java中声明实例关键字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20826712/

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