海大软件1102班 - 云代码空间
—— 你究竟输入什么了导致它崩溃?
/** * 单例模式的普通形式 */ public class Singleton { private static Singleton instance = null; private Singleton() { // do something } public static Singleton getInstance() { if (instance == null) { instance = new Singleton(); } return instance; } }2.第二种形式:
/** * 单例模式第二种形式 */ public class Singleton { // 在自己内部定义自己的一个实例,只供内部调用 private static Singleton instance = new Singleton(); private Singleton() { // do something } // 这里提供了一个供外部访问本class的静态方法,可以直接访问 public static Singleton getInstance() { return instance; } }
public class Singleton { private static Singleton instance = null; private Singleton() { // do something } public static Singleton getInstance() { if (instance == null) { synchornized(Singleton.class){ if (null == instance) { instance = new Singleton(); } } } return instance; } }