设计模式之单例模式示例

public  class  ActivityManager {

            private  volatile  static  ActivityManager  mAManager;

            public  static  ActivityManager  getActivity() {

                       if(mAManager==null) {

                                 synchronized(ActivityManager.class) {

                                             if(mAManager==null) {

                                                        mAManager=new   ActivityManager();

                                            }

                                }

                      }

                     returnmAManager;

          }

}

注:volatile关键字的作用是:线程每次使用到被volatile关键字修饰的变量时,都会去堆里拿最新的数据。换句话说,就是每次使用getActivity时,保证了getActivity是最新的。

你可能感兴趣的:(设计模式之单例模式示例)