懒汉式单例模式和饿汉式单例模式的区别

来源:互联网 发布:python爬虫入门教程 编辑:程序博客网 时间:2024/06/04 18:03
1:相同点
1:构造子都是私有,此类不能被继承

2:不同点
1:饿汉式单例类在自己被加载时就将自己实例化,即便加载器是静态的,在饿汉式单例类加载时仍会将自己实例化,单从资源利用效率角度来讲(比懒汉式单例类稍差些),但是从速度和反应时间角度来讲,比懒汉式单例类稍好.
2:懒汉式单例类在实例化时,必须处理好在多个线程同时首次引用此类时访问限制的问题,特别是单例类作为资源控制器在实例化时必须涉及资源初始化,而资源初始化很有可能耗费时间
3:懒汉式实现了对静态工厂方法使用同步化来处理多线程环境,有些设计师建议使用双重检查成例,但必须注意的是,该"双重检查成例 "不可以在Java语言中使用
原创粉丝点击