单例设计模式

  • 类的单例设计模式,就是采取肯定的办法保障在整个的软件系统中,对某个类只能存在一个对象实例,并且只提供一个获得其对象实例的办法.
  • 该类的结构器为private
  • 类的内部只能调用该类的某个静态方法以返回类外部创立的对象
  • 静态方法只能拜访类中的动态成员变量
  • 因而指向类外部产生的该类对象的变量也必须是动态的.

* 办法一:饿汉式(间接创建对象)

class Bank{     //1. 私有化类的结构器     private Bank(){}    //2. 外部创立类的对象     //4. 要求此对象也是动态的     private static Bank instance = new Bank();     //3. 提供public、static的办法返回类的对象    public static Bank getInstance(){         return instance ;     }}

* 办法二: 懒汉式(随调用创建对象)

class Bank{    //1. 私有化类的结构器    private Bank(){}     //2. 申明以后类对象,然而没有初始化    //4. 要求此对象也是动态的    private Bank instance = null;    //3. 提供public、static的办法返回类的对象    public static Bank getInstance(){         if(instance == null){            instance = new Bank() ;             return instance ;         }     }}
饿汉式懒汉式
益处线程平安提早对象的创立
害处对象加载工夫过长(目前的写法)<br/>线程不平安