java中的单例模式

 

HK学习笔记

 

首先定义一个皇帝

 

Emperor.java

public class Emperor {

	private static final Emperor emperor = new Emperor() ;
	
	//private 的构造方法使其它类不能再把这个对象new 出来
	private Emperor(){
		
	}
	//为什么要synchronized 因为:线程安全的问题
	public synchronized static Emperor getInstance(){
		return emperor;
	}
	
	public void emperorInfo(){
		System.out.println("I am hk little emperor ");
	}
}

 

 

再定义一个大臣

 

public class Minister {

	public static void main(String[] args) {
		Emperor emperor1 = Emperor.getInstance();
		emperor1.emperorInfo();
		
		Emperor emperor2 = Emperor.getInstance();
		emperor2.emperorInfo();
		
		Emperor emperor3 = Emperor.getInstance();
		emperor3.emperorInfo();
		
	}
}

 

 

结果:

 

 I am hk little emperor 
 I am hk little emperor 
 I am hk little emperor 

 下面是uml图java中的单例模式

相关文章: