黑马程序员技术交流社区

标题: 单例设计模式为什么饿汉式比懒汉式更好 [打印本页]

作者: 吕晓阳    时间: 2015-4-16 09:39
标题: 单例设计模式为什么饿汉式比懒汉式更好
饿汉式
  1. class Single
  2. {
  3.         private static Single s = new Single();
  4.         private Single(){}
  5.         public static Single getInstance()
  6.         {
  7.                 return s;
  8.         }
  9. }
复制代码


懒汉式
class Single
{
        private static Single s = null;
        private Single(){}
        public static Single getInstance()
        {
                if(s==null)
                {
                        synchronized(Single.class)
                        {                               
                                if(s==null)
                                        s = new Single();
                        }
                }
                return s;
        }
}




作者: 燕赵之风    时间: 2015-4-16 09:57
饿汉式安全简单。如果用懒汉式,可能会出现多线程安全问题。就像你上边用到了synchronized来保证此Single对象可以被安全创建。




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