古城老巷
2018-03-08 15:51
怎么创建的是同一个一个对象?
您需要理解以下两段代码的区别:
//代码1 Singleton s1 = new Singleton(); Singleton s2 = new Singleton(); //代码2 Singleton s1 = Singleton.instance; Singleton s2 = Singleton.instance;
在代码1中,在没有实现“单例模式”的情况下,是实实在在的分别创建了两个对象s1和s2。所有这里的s1和s2肯定是不同的。
而已经实现了“单例模式”之后,唯一的对象instance在Singleton类中已经创建。在代码2中,没有创建任何新的对象,s1和s2都只是引用了Singleton中的instance而已。所有这里的s1和s2肯定是相同的。
希望我的回答能给你帮助。如果您还有任何疑惑,可以私信我。
望采纳,谢谢您。
static 这个关键字
模式的秘密---单例模式
74408 学习 · 108 问题
相似问题