快速掌握单例模式

来源:互联网 发布:服务网络占用硬盘 编辑:程序博客网 时间:2024/06/02 04:12

原理

  • 保证在内存中,只有一个对象。
    如何去保证
  • 构造函数私有化
  • 自己创建当前类对象;
  • 对外提供公共的访问已经创建好的对象;
    种类
  • 饿汉式;
    class Teacher{
    private static final Teacher t=new Teacher();
    private Teacher(){};
    public static Teacher getTeacher(){
    return t;
    }
    }
  • 懒汉式;
    class Student{
    private static Student s=null;
    private Student(){};
    public static Student getStuent(){
    if(s==null){
    s=new Student();
    }
    return s;
    }

}
两种设计模式的区别

  • 饿汉式:随着类的加载而创建对象;
    -懒汉式:当调用的时候创建对象,以后使用的就是是同一个对象;(延迟加载)
    servlet就是一种单例模式;