ccEmma 2017-10-22 03:11 采纳率: 0%
浏览 1028

单例模式引发的问题:这种模式还算单例模式吗?

图片说明

如图,在做单例模式之饿汉式时遇到的疑问:在类中加了一个常量对象**single2**,并获取对象,所以这种模式还算单例模式吗?

单例模式的概念就是:一个类只有一个对象实例,是线程安全的。

而在学习过程中看到这样一句话:“饿汉式无需关注多线程问题、写法简单明了、能用则用。但是它是加载类时创建实例(上面有个朋友写错了)、所以如果是一个工厂模式、缓存了很多实例、那么就得考虑效率问题,因为这个类一加载则把所有实例不管用不用一块创建。”

既然一个单例模式类只会创建一个对象,那么为什么上句还会说:这个类一加载则把所有实例不管用不用一块创建。

  • 写回答

2条回答 默认 最新

  • 鼠晓 博客专家认证 2017-10-22 05:19
    关注

    一个类只有一个对象实例,是线程安全的。?

    单例和线程安全貌似没直接关系,
    线程安全应该说的是实现获取单例是否线程安全。

    题主这样的单例感觉意义不大。。两个对象一样,有必要创建两个?

    既然一个单例模式类只会创建一个对象,那么为什么上句还会说:这个类一加载则把所有实例不管用不用一块创建。
    这句话的意思是,如果我的项目中有很多类中用到单例模式(饿汉的),一启动就需要创建很多对象,,,而不是指的一个类

    有问题还可以追问

    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!