为什么懒汉式和饿汉式同样属性是private,但是在饿汉式中

为什么懒汉式和饿汉式同样属性是private,但是在饿汉式中

为什么懒汉式和饿汉式同样属性是private,但是在饿汉式中,老师说不可以用new的方法构造因为前面是private,但是在懒汉式中 老师直接用new实例化又变得可以了呀?这里不太理解 望解答 谢谢


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小班 2019-09-12 14:46:28

同学你好,1、同学说的是不是-->在饿汉式的课程讲解过程中,5分20秒的时候

http://img1.sycdn.imooc.com//climg/5d79e81209f8deac09050533.jpg

这里的创建SingletonOne不能使用new关键字调用SingletonOne的构造方法来直接创建SingletonOne,是因为这是在测试类方法中,SingletonOne的构造方法是私有的只能在SingletonOne中调用,在测试类方法中是不能直接调用的。

2、同学说的-->在懒汉式中 老师直接用new实例化又变得可以了呀,

这里老师查看了一下课程,在懒汉式的讲解过程中,调用构造方法是在SingletonOne类中,而并没有在测试类中调用SingletonOne的构造方法呀

http://img1.sycdn.imooc.com//climg/5d79e91f09d678db10450658.jpg

所以还麻烦同学说一下,在懒汉式的测试类中是哪里直接使用了私有构造方法实例化了。

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

  • 提问者 海豹熊 #1
    老师,我指的就是你图片里说的两个地方。也就是说private的属性类里,在类中构造是可以的,但是不可以在其他包的构造方法中直接用new构造是嘛?
    2019-09-13 02:11:46
  • 好帮手慕小班 回复 提问者 海豹熊 #2
    同学你好,这里的说法是正确的呐,private修饰的属性和方法只能在本类中访问,不能在其他类中访问,在这里这个构造方法是private修饰的,所以只能在本类中使用new关键字来创建对象。同学可以复习一下java继承章节中的访问修饰符的分类及作用 https://class.imooc.com/lesson/986#mid=23433 如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
    2019-09-14 08:27:21
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师