单例设计模式
- 保证一个类在使用过程中,只有一个实例。优势就是他的作用,这个类永远只有一个实例。
优势:这个类永远只有一个实例,占用内存少,有利于Java垃圾回收。
单例设计模式关键点
- 私有的构造方法。
- 提供一个外界能够访问的方法。
单例模式代码演示
- 懒汉模式(延迟加载)
package test;
//懒汉模式
public class Teacher {
private static Teacher tea=null;
private Teacher(){}//提供私有的构造方法
//提供外界能够访问的静态方法
public static Teacher getTeacher(){
if(tea==null){
tea=new Teacher();
}
return tea;
}
} - 饿汉模式(饿汉式是线程安全的,在类创建的同时就已经创建好一个静态的对象供系统使用,以后不在改变。)
package test;
//懒汉模式
public class Teacher {
private static Teacher tea=null;
private Teacher(){}//提供私有的构造方法
//提供外界能够访问的静态方法
public static Teacher getTeacher(){
if(tea==null){
tea=new Teacher();
}
return tea;
}
} - 测试类:
package test; public class Test {
public static void main(String[] args) {
Student student = Student.getStudent();
System.out.println(student);
Teacher teacher = Teacher.getTeacher();
System.out.println(teacher);
}
}