黑马程序员技术交流社区

标题: 单例设计模式中的两种常见方式 [打印本页]

作者: 大大的心    时间: 2014-12-2 19:38
标题: 单例设计模式中的两种常见方式
package o_oriented;
/*
  饿汉式:
class Single {
     private Single(){}
     private static Single s = new Single();
     public static Single getInstance() {
           return s;
     }
    这个先初始化对象。
Single类一进内存,就已经创建好了对象。
注意:在开发时,用饿汉式。懒汉式在面试当中比较常见,通过结合多线程来解释。
*/
public class SingleDemo2 {
     public static void main(String[] args)
     {         
     }   
}
/*
懒汉式:
对象是方法被调用时,才初始化,也叫做对象的延时加载。
Single类进内存,对象还没有存在,只有调用了getInstance方法时,才建立对象。双重判断机制
*/
class Single {
     private Single(){}
     private static Single s = null;
     public static Single getInstance() {
            if( s == null)
           {
                synchronized(Single .class)
                {
                      if( s == null)
                            s = new Single();
                }
           }
            return s ;
     }
}
====================================================================================================





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