单例模式:
顾名思义就是一个类只能去创建一个实例,实现这种方式就叫做单例模式
为什么要使用到单例模式?
节省资源、方便控制
单例模式的实现逻辑:
1.只能创建一个实例,我们就要保证构造函数私有化,不让你通过构造函数去创建当前类的实例
2.通过静态方法返回实例,要通过类提供的方法让外界访问
3.只对类进行一次初始化,之后访问都通过第一次初始化化的对象去访问
单例模式的两种类型
1.饿汉模式
饿汉模式是先创建好实例,当需要使用的时候,调用方法去使用,但是这样就出现了如果创建好了实例但是没用到,就会出现浪费空间的问题
class Sigledemo {
private static Sigledemo sigledemo = new Sigledemo();
private Sigledemo() {
}
;
public static Sigledemo getInstance() {
return sigledemo;
}
}
2.懒汉模式
懒汉模式相比于饿汉模式在于当我们需要使用实例的时候再去创建这个实例,避免了用不到时出现的空间浪费问题
class Sigledemo {
private static Sigledemo sigledemo=null;
private Sigledemo(){
}
public static Sigledemo getInstance(){
if (sigledemo==null){
sigledemo=new Sigledemo();
}
return sigledemo;
}
}