Java:单例模式

单例模式,就是我们在获取对象时,只能获取同一个对象。要实现单例模式,就要满足几个条件,首先要有 私有化的静态的对象引用私有化的构造方法,私有化是为了防止外部类随意调用、创建对象。然后对外提供一个获取对象的方法即可。

介绍两种工厂模式,懒汉式加载饿汉式加载

1、懒汉式加载

在第一次获取对象时,创建对象

public class Singleton_01 {
    
    
	
	//声明静态变量
	private static Singleton_01 s;
	
	//构造方法私有化,外部不能创建对象
	private Singleton_01(){
    
    
		
	}
	
	//在获取对象时,先判断对象是否被实例化
	//如果对象还没有被创建,就创建
	//如果已经被实例化,则直接返回对象
	public static Singleton_01 getInstance(){
    
    
		if(s == null){
    
    
			s = new Singleton_01();
		}
		
		return s;
	}
	
}

2、饿汉式加载

在类加载的时候就创建了对象

public class Singleton_02 {
    
    
	
	//在类加载的时候就直接创建对象
	private static Singleton_02 s = new Singleton_02();

	//构造方法私有化,外部不能创建对象
	private Singleton_02(){
    
    
		
	}
	
	//对外提供的获取对象的方法,公共的
	public static Singleton_02 getInstance(){
    
    
		return s;
	}
}

猜你喜欢

转载自blog.csdn.net/qq_41504815/article/details/112850930