黑马程序员技术交流社区

标题: java单例模式多线程问题,求大神讲解!! [打印本页]

作者: zhangxin    时间: 2015-7-4 21:37
标题: java单例模式多线程问题,求大神讲解!!
懒汉式单例模式,为什么要加synchronized,而且为什么前后要加两个if语句,求大神讲解!!
  1. public class SingletonClass {

  2.   private static SingletonClass instance = null;

  3.   public static SingletonClass getInstance() {
  4.     if (instance == null) {
  5.       synchronized (SingletonClass.class) {
  6.         if (instance == null) {
  7.           instance = new SingletonClass();
  8.         }
  9.       }
  10.     }
  11.     return instance;
  12.   }

  13.   private SingletonClass() {

  14.   }

  15. }
复制代码





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