单例设计模式概述:单例模式就是要确保类在内存中只存在一个对象,该实例必须自动创建,并对外提供。
优点:在内存中只存在一个对象,因此可以节约系统资源,对于一些需要频繁创建和销毁的对象,单例模式无疑是可以提高系统的性能。
缺点:没有抽象层,因此扩展很难。
责任过重,在一定程序上违反了单一原则.
保证类中只有一个对象的步骤:
1. 构造私有
2. 在成员位置创建一个对象
3. 提供方法访问
//案例
//学生类
public class Student{
//构造私有
private Student(){};
//创建私有实例
private static Student s = new Student();
//提供方法访问
//静态访问
public static Student getStudent(){
return s;
}
}
public class StudentDemo{
public static void main(String[] args){
Student s1 = Student.getStudent();
Student s2 = Student.getStudent();
System.out.println(s1==s2);//true
}
}