只写实用性
第一种:(懒汉,线程不安全)
弊端:当有多个线程并行调用 getInstance() 的时候,就会创建多个实例
//######################第一种懒汉式,线程不安全 start#####################
public class Singleton {
private static Singleton instance;
//私有构造,此类不可创建
private Singleton() {
}
//懒汉,线程不安全
public static Singleton getInstance() {
if (instance == null)
instance = new Singleton();
return instance;
}
}
//######################第一种懒汉式,线程不安全 end#####################
第二种:(懒汉式,线程安全)
弊端:做到了线程安全,并且解决了多实例的问题,但是它并不高效
//######################第二种懒汉式,线程安全 start#####################
public class Singleton {
private static Singleton instance;
//私有构造,此类不可创建
private Singleton() {
}
public static synchronized Singleton getInstance() {
if