单例模式: 1.保证类在内存中只能有一个对象 单例模式分为: 1.懒汉式:类一加载就创建对象 2.饿汉式:用的时候,才去创建对象 相关经验: 饿汉式 (是不会出现问题的单例模式) 懒汉式 (可能会出现问题的单例模式) (1.)懒加载(延迟加载) (2.)线程安全问题 1.)是否多线程环境 是 2.)是否有共享数据 是 3.)是否有多条语句操作共享数据 是举例: 1.饿汉模式: public class Student{ //私有构造方法 private Student(){ } //在本类中进行实例,只能实例一次,并且是私有的 private static final Student STUDENT = new Student(); //提供公共的方法,供外界去访问 public static Student getStudent(){ return STUDENT; } } 2.懒汉模式 public class Student{ private Student(){} //这是声明这个对象,什么时候使用它的时候什么时候去创建 private static Student student = null; //线程同步锁,确保内存中只能有一个对象 public synchronized static Student getStudent(){ if (student == null) { student = new Student(); } return student; } }
时间: 2024-10-12 15:42:49