- 开发:饿汉式(是不会出问题的单例模式)
- 面试:懒汉式(可能会出问题的单例模式)
- A:懒加载(延迟加载)
- B:线程安全问题
- a:是否多线程环境 是
b:是否有共享数据 是
c:是否有多条语句操作共享数据 是
public class TeacherDemo {
public static void main(String[] args) {
Teacher t1 = Teacher.getTeacher();
Teacher t2 = Teacher.getTeacher();
System.out.println(t1 == t2);
System.out.println(t1);
System.out.println(t2);
}
}
public class Teacher {
private Teacher() {
}
private static Teacher t = null;
public synchronized static Teacher getTeacher() {
if (t == null) {
t = new Teacher();
}
return t;
}
}