最赞回答 / HungerCheung
您需要理解以下两段代码的区别:<...code...>在代码1中,在没有实现“单例模式”的情况下,是实实在在的分别创建了两个对象s1和s2。所有这里的s1和s2肯定是不同的。而已经实现了“单例模式”之后,唯一的对象instance在Singleton类中已经创建。在代码2中,没有创建任何新的对象,s1和s2都只是引用了Singleton中的instance而已。所有这里的s1和s2肯定是相同的。希望我的回答能给你帮助。如果您还有任何疑惑,可以私信我。望采纳,谢谢您。
2018-03-08
最新回答 / HungerCheung
Java框架是对原生的Java做了更好的封装、方便用户开发使用,这是面向对象语言的特点。设计模式只是一种思想。没有必要学好没有一种模式,再投入具体编码学习中。建议您,在具体的框架学习中,去了解熟悉这些思想。如果我的回答对您有所帮助,望采纳。如果您还有其他困惑,可以私信我,我会尽快回复。谢谢。
2017-12-29
参考文章:https://liuyanzhao.com/3212.html
public class Singleton {
private static class LazyHolder {
private static final Singleton INSTANCE = new Singleton();
}
private Singleton (){}
public static final Singleton getInstance() {
return LazyHolder.INSTANCE;
}
}
public class Singleton {
private static class LazyHolder {
private static final Singleton INSTANCE = new Singleton();
}
private Singleton (){}
public static final Singleton getInstance() {
return LazyHolder.INSTANCE;
}
}
2017-11-17