已有259人关注
java中单实例
发表在Java答疑区 2017-09-20 悬赏:5 学分
是否精华
版块置顶:

虽然是单实例模式,但为什么能创建三个实例 ,并用第三个是用其自身的构造 方法所创建 

不是说一个类只能创建一个实例 吗?

截图81.png


2017-09-20 10:19:24编辑
分享到:
精彩评论 4
根号申
学分:4736 LV12
TA的每日心情
2021-07-16 23:48:46
2017-09-20
沙发

前两个引用变量是同一个对象,因为是用单例模式创建的,第三个变量是用new创建的,与前两个都不一样。main方法中总共创建了两个不同的实例。你可以用“==”和“equals()”来判断一下这三个变量是不是一样的。

luo123456123cheng
学分:1960 LV9
2017-09-20
板凳

根号申 发表于2017-09-20 13:43

前两个引用变量是同一个对象,因为是用单例模式创建的,第三个变量是用new创建的,与前两个都不一样。main方法中总共创建了两个不同的实例。你可以用“==”和“equals()”来判断一下这三个变量是不是一样的。

那说明用new关键字还是可以创建实例的,这样的话不是创建了二个不同的实例 ?

根号申
学分:4736 LV12
TA的每日心情
2021-07-16 23:48:46
2017-09-21
地板

luo123456123cheng 发表于2017-09-20 19:07

那说明用new关键字还是可以创建实例的,这样的话不是创建了二个不同的实例 ?

因为你的main方法写在本类中了,所以可以调用private方法,你把main方法写在别的类里,就不能用new创建对象了。

luo123456123cheng
学分:1960 LV9
2017-09-21
4L

根号申 发表于2017-09-21 09:38

因为你的main方法写在本类中了,所以可以调用private方法,你把main方法写在别的类里,就不能用new创建对象了。

哦,我明白了,谢谢老师!


首页上一页 1 下一页尾页 4 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照