1.饿汉单例
2.懒汉单例
在写代码时会根据具体开发情况来选择单例模式,单例模式是什么东东?
简单来说单就是一个进程中只创建一个实例,所以叫做单例模式
单例模式的实现有两个选择,一个是“饿汉”单例,一个是了“懒汉”单例
懒这个字在程序中并不是贬义词,让程序懒,就是让程序到达对应的时刻再去工作,而饿汉代表着很急迫,刚开始就把很多没必要的工作做了,这样可能会导致占用资源,效率不高。
下面先介绍饿汉版本的单例模式
//单例类,这个类只能有一个实例
class Singleton{
//这是饿汉模式,在类创建的时候就创建了实例
private static Singleton instance = new Singleton();//这是这个类里的唯一实例
//在类外想调用singleton,给一个接口
public static Singleton getInstance(){
return instance;
}
//防止被new
private Singleton(){
//这个操作强制其他代码new这个实例
}
}
public class singletonDemo {
public static void main(String[] args) {
//想要搞单例,那就不能再继续new一个对象,所以要在单例类中搞一个私有的构造方法,防止在单例类外被new
//Singleton singleton = new Singleton();
//如果想调用单