设计模式很重要,地球人都知道。
Singleton是最简单的一种设计模式,也是用得最多的一种设计模式。如果遇到这种情况:在一个VM中某一个类有且只能有一个实例,那么就需要用到Singleton设计模式。
Singleton实现起来也很简单,如下:
package
sample;
public
class
ClassA {
//唯一的实例
private
static
ClassA
instance
;
//确保不能在此Java文件以外实例化ClassA
private
ClassA(){};
//通过这个静态公有的方法取得ClassA的实例
//这是唯一获得实例的方法
//synchronized 主要用来确保不同线程不能同时使用这个方法
public
static
synchronized
ClassA getInstance(){
if
(
instance
==
null
){
//实例化
instance
=
new
ClassA();
}
return
instance
;
}
}