一、概述 单例模式确保一个类只有一个实例,并提供一个安全的访问点。二、解决问题 从概述中我们知道,单例模式就是保证系统的一个类只有一个实例。它的作用就是控制受限资源的访问,确保任何时刻都只有一个线程在访问一个受保护的资源。或者确保行为和状态的一致性,避免异常行为。在java ...
一、概述
单例模式确保一个类只有一个实例,并提供一个安全的访问点。
二、解决问题
从概述中我们知道,单例模式就是保证系统的一个类只有一个实例。它的作用就是控制受限资源的访问,确保任何时刻都只有一个get='_blank'>线程在访问一个受保护的资源。或者确保行为和状态的一致性,避免异常行为。在java web的程序中可能用到最多单例的地方就是jdbc的线程池。
三、结构类图
四、成员角色
实例变量(uniqueInstance):持有唯一的单例实例,静态私有访问权限,只有本类才能访问该实例变量。
全局访问方法(getInstance):提供全局的对单例实例的访问,任何时候都返回同一个单例实例(uniqueIntance),公共静态访问权限,任何对象都可以访问到。
五、应用实例
单例模式有三种实现方案,我们来一起来看看如何实现。
1.同步getInstance()方法
package singleton.pattern;public class SynchronizedSingleton { //唯一的实例,只有本类才可以访问 private static SynchronizedSingleton uniqueInstance; //只有本类才可以实例自己 private SynchronizedSingleton(){ } //提供对实例的全局访问点(同步方法,任何时候都只有一个线程可以访问该方法) public synchronized static SynchronizedSingleton getInstance(){ if(uniqueInstance == null){ uniqueInstance = new SynchronizedSingleton(); } return uniqueInstance; }}
海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com
原标题:设计模式(六):单例模式
关键词:设计模式
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。