##单例模式
> 单例模式:一个类只有一个实例,而且自行实例化。保证整个应用程序的生命周期中,任意时候,只有一个实例存在。
> 特点:构造函数私有;静态实例;提供一个全局访问点
>以下均支持多线程的
1)饿汉式://类加载时就初始化
public class Singleton{
private static final Singleton instance = new Singleton();
private Singleton(){}
public static Singleton getInstance(){
return instance;
}
}
2)懒汉式静态内部类:lazy加载,推荐
public class Singleton{
private static class SingletonHolder{
private static final Singleton INSTANCE = new Singleton();
}
private Singleton(){}
public static final Singleton getInstance(){
return SingletonHolder.INSTANCE;
}
}
3)枚举类://jdk1.5,自动序列化
public enum Singleton{
INSTANCE;
}