单例模式(一)

单利模式:只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。

java 代码示例:

package com.jxufe.singleton;
/** 
 * 单例模式
 * 注意:饿汉模式与懒汉模式不能同时使用
* @author jack
* @version 创建时间:2016年4月26日 下午1:02:07
*
 */
public class Singleton {
         private Singleton(){
        	 
         }
         /**
          * 饿汉模式,线程安全
          */
        private static Singleton instance = new Singleton();
        public static Singleton getInstance(){
        	return instance;
        }
        
        /**
         * 懒汉模式,线程不安全
         */
        private static Singleton instance1 ;
        public static Singleton getInstance1(){
        	if(instance1 == null){
        		instance1 = new Singleton();
        	}
        	return instance1;
        }
}

测试类:

package com.jxufe.singleton;

public class Test {
   public static void main(String[] args) {
	 Singleton singleton1 = Singleton.getInstance();
	 Singleton singleton2 = Singleton.getInstance();
	 if(singleton1 == singleton2)
		 System.out.println("singleton1与singleton2指向同一个对象");
	 else {
		 System.out.println("singleton1与singleton2不指向同一个对象");
	}
	 
	 
	 Singleton singleton3 = Singleton.getInstance1();
	 Singleton singleton4 = Singleton.getInstance1();
	 if(singleton1 == singleton2)
		 System.out.println("singleton3与singleton4指向同一个对象");
	 else {
		 System.out.println("singleton3与singleton4不指向同一个对象");
	}
}
}

结果:




你可能感兴趣的:(单例模式(一))