1.单例模式概念:
单例模式是一种设计模式,他的核心是确保一个类只有一个实例,单例模式主要有两种方式:饿汉式与懒汉式
2.饿汉式
饿汉就是一个迫切的意思,类加载就会导致该单实例被创建
饿汉式第一种方式:
class Singleton{
//在本类中创建本类对象
private static Singleton instance=new Singleton();
//提供一个公共的访问方式,让外界获取该对象
public static Singleton getInstance(){
return instance;
}
//私有构造方法
private Singleton() {
}
}
我们来对上面这个饿汉式解析一下:
1.私有构造方法,对于构造方法,我们使用private修饰,那么就保证了外界不能通过new这个操作来获取实例
2.饿汉,我们在类里面new一个实例,这个成员变量用private修饰,外界是无法获取的,同时static修饰了他,我们知道静态成员的初始化是在类加载的阶段触发的,所以只要这个类一被加载,那么我们的实例也就创建好了
3.getInstance方法,同样也是static修饰的,这是因为在本类中创建的实例是被static修饰的,普通的方法不能直接去访问,所以要将获取对象的这个方法也用static修饰,Singleton这个类不能构建实例,我们要想获取实例就只能类名