java的单例模式的一个例子

单例模式就是运行环境中只存在一个实例,
java.lang.Object类 的toString() 输出的内容是内存地址, 因此自定义的类 如果没有重写toString() 时 也同样。
package com.lyx.demo;
/**
 *   定义一个 单例的类
 *   作者:李亚希
 */
public class SingletonDemo {
	 public   static   int  index;   //标示 类的索引
	private   SingletonDemo()
	{
		      index++;
		      System.out.println("我是第"+index+"个实例");
	}
	public     static    SingletonDemo   instance=null;

	
	public    static    SingletonDemo  getInstance()
	{
		   if(instance==null)
		   {
			     instance=  new  SingletonDemo();
		   }
		   return    instance;
	}
	

}

package com.lyx.demo;
/*
 *  单例测试类
 */
public class TestSingleton {

	public static void main(String[] args) {
		  SingletonDemo  sd1=SingletonDemo.getInstance();
		  System.out.println(sd1);
		  SingletonDemo  sd2=SingletonDemo.getInstance();
		  System.out.println(sd2);
		  SingletonDemo  sd3=SingletonDemo.getInstance();
		  System.out.println(sd3);
		  SingletonDemo  sd4=SingletonDemo.getInstance();
		  System.out.println(sd4);
	}

}





运行结果:

我是第1个实例
com.lyx.demo.SingletonDemo@c17164
com.lyx.demo.SingletonDemo@c17164
com.lyx.demo.SingletonDemo@c17164
com.lyx.demo.SingletonDemo@c17164

你可能感兴趣的:(java)