优点:执行效率高,性能高,没有任何锁
缺点:如果初始化类的数量很多的话;会出现浪费内存
2种写法;没有区别
package singleton.hungry;
public class HungrySingleton {
private static final HungrySingleton hungrySingleto = new HungrySingleton();
private HungrySingleton() {
};
private HungrySingleton getHungrySingleto() {
return hungrySingleto;
}
public static void main(String[] args) {
System.out.println(hungrySingleto);
System.out.println(hungrySingleto);
System.out.println(HungrySingleton.hungrySingleto);
}
}
package singleton.hungry;
public class HungryStaticSingleton {
private static final HungryStaticSingleton hungryStaticSingleton;
static {
hungryStaticSingleton = new HungryStaticSingleton();
}
private HungryStaticSingleton() {
}
private HungryStaticSingleton getHungryStaticSingleton() {
return hungryStaticSingleton;
}
public static void main(String[] args) {
System.out.println("=====================");
System.out.println(HungryStaticSingleton.hungryStaticSingleton);
System.out.println(hungryStaticSingleton);
System.out.println("=====================");
}
}



