黑马程序员技术交流社区

标题: 单例模式总结 [打印本页]

作者: syusikoku    时间: 2014-3-30 08:42
标题: 单例模式总结
单例模式:
    就是说你不能创建对象,但是你可以通过调用我的静态的方法获取到我内部创建的一个实例对象
  
  分为饱汉模式和饿汉模式:
      饱汉模式: 就是说对象是已经创建好的,直接可以调用。
                而且这个对象不管有没有人调用都是已经创建好的。它是随着类的加载而加载
      饿汉模式: 就是说对象的引用创建了,但是还没有实例对象。当静态方法调用的时候,
才会创建该类的实例对象。  
     
      饿汉模式引起的线程安全问题的体现:
    这里会出现线程安全的问题。如果一个线程进来了,发现对象为空,就要创建,但是这里
我们还没有给他赋值。另外一个线程就进来了。发现这里的对象也是为空,他也创建的。这
个时候内存里面就有两个对象了。这就是线程安全问题的体现。
               


作者: 许庭洲    时间: 2014-4-1 14:14
值得学习ing!
作者: syusikoku    时间: 2014-4-1 15:13
:handshake
作者: 肖涵    时间: 2014-4-2 18:20
:handshake谢谢楼主分享
作者: syusikoku    时间: 2014-4-2 18:50
不客气。我的QQ是2475725157, 可以加我。大家多交流交流。
作者: 2528870651    时间: 2014-4-5 18:45
已阅    :)
作者: Tking    时间: 2014-4-5 22:46
  1. class Singleton
  2. {
  3.         private static Singleton singleton=null;
  4.         private Singleton(){}
  5.         public static Singleton getSingleton()
  6.         {
  7.                 return singleton!=null?singleton=new Singleton():singleton;
  8.         }
  9. }
复制代码


懒汉式




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2