三种单例模式:
1饿汉模式
class Singleton{
private Singleton(){
system.out.println("私有构造方法");
}
private static Singleton instance=new Singleton();
public static Singleton getInstance(){
return instance;
}
}
2 懒汉模式
class Singleton{
private Singleton(){
system.out.println("私有构造方法");
}
private static Singleton instance;
public synchronized static Singleton getInstance(){
if(null==instance){
instance=new Singleton();
}
return instance;
}
}
3 静态内部类
class Singleton{
private Singleton(){
system.out.println("私有构造方法");
}
private static class SingletonHolder{
private static Singleton instance=new Singleton();
}
public static Singleton getInstance(){
return SingletonHolder.instance;
}
}