一、所谓的单列设计模式,就是采用一定的方法保证在整个的软件系统中
二、单列的饿汉式实现
public class SingletonTest1 { Bank bank1=Bank.getInstance(); } class Bank{ //1、私有化构造器 private Bank(){ } //2、创建内部类对象 //4、要求此对象也必须声明为静态的 private static Bank instance=new Bank(); //3、提供公共的静态的方法、返回类对象 public static Bank getInstance(){ return instance; } 三、单列的懒汉式实现
sipublic class SingletonTest2 { public static void main(String[] args) { Order order1=Order.getInstance(); Order order2=Order.getInstance(); System.out.println(order1==order2); } } //懒汉式 class Order{ //1、私有化构造器 private Order(){ } //2、声明当前类对象,没有初始化 //4、此对象声明为static的 private static Order instance=null; //3、声明public、static的返回当前类对象的方法 public static Order getInstance(){ if (instance==null) { instance = new Order(); } return instance; } }
四、区别
饿汉式:
坏处:对象加载时间过长
好处:饿汉式是线程安全的
懒汉式:
好处:延迟对象的创建
坏处:目前的写法:线程不安全。-->到多线程内容时,再修改