8.7.1 单例模式
单例模式要领:
1.构造方法私有化
2.对外提供一个公开的静态的获取当前类型对象的方法.
3.提供一个当前类型的静态变量。
1.构造方法私有化
2.对外提供一个公开的静态的获取当前类型对象的方法.
3.提供一个当前类型的静态变量。
单例模式分为两种:
饿汉式单例:在类加载阶段就创建了对象。
懒汉式单例:用到对象的时候才会创建对象。
饿汉式单例:在类加载阶段就创建了对象。
懒汉式单例:用到对象的时候才会创建对象。
单例模式是23种设计模式中最简单的一种设计模式。
为了解决什么问题?
1.
为了保证JVM中某一个类型的java对象永远只有一个。
2.
为了节省内存的开销。
缺点:单例模式的类无法被继承!
单例模式——饿汉模式
public class Single {
private static Single instance = new Single();
private Single(){
}
public static Single getInstance(){
return instance;
}
}
单例模式——懒汉模式
public class Single2 {
private static Single2 instance;
private Single2(){
}
public static Single2 getInstance(){
if(instance == null){
instance = new Single2();
}
return instance;
}
}