//饿汉式 单例模式 class Bank{ //1.私有化类的构造器 private Bank() { } //2.内部创建类的对象 (类的实例) private static Bank bank = new Bank(); //3.提供公共的静态方法 , 返回类的对象 (注 :静态方法中只能调用静态结构) public static Bank getInstance() { return bank; } }
//懒汉式 单例模式 class Order{ //1.私有化类的构造器 private Order() { } //2.声明当前类的对象 , 但不初始化 private static Order instance=null; //3.提供public , static 的返回当前对象的方法 public static Order getInstance() { if(instance == null) { instance = new Order(); } return instance; } }
/线程安全的懒汉式单例模式 : 同步方法 class Bank{ //1.私有化类的构造器 private Bank(){}; //2.声明当前类的对象 , 但不初始化 private static Bank instance=null; //3.提供public , static 的返回当前对象的方法 public static synchronized Bank getInstance(){ if (instance == null){ instance=new Bank(); } return instance; } } //线程安全的懒汉式单例模式 : 同步代码块 class Bank1{ //1.私有化类的构造器 private Bank1(){}; //2.声明当前类的对象 , 但不初始化 private static Bank1 instance=null; //3.提供public , static 的返回当前对象的方法 public static Bank1 getInstance(){ synchronized(Bank1.class) { if (instance == null) { instance = new Bank1(); } return instance; } } }