《设计模式之禅》--工厂方法扩展:实现单例
2023-09-14 08:59:10 时间
需求:使用工厂方法模式实现单例模式
public class Singleton { //不允许通过new产生一个对象 private Singleton() { } public void doSomething() { //业务处理 } }
利用反射创建单例对象
public class SingletonFactory { private static Singleton singleton; static { try { Class cl = Class.forName(Singleton.class.getName()); //获得无参构造 Constructor constructor = cl.getDeclaredConstructor(); //设置无参构造是可访问的 constructor.setAccessible(true); //产生一个实例对象 singleton = (Singleton) constructor.newInstance(); } catch (Exception e) { //异常处理 } } public static Singleton getSingleton() { return singleton; } }
还可以扩展单例构造器
相关文章
- .NET 扩展方法 (一)
- Scala中使用implict 扩展现有类的方法
- C#深拷贝扩展方法(引用类型利用序列化实现深拷贝)
- c# 扩展方法奇思妙用集锦
- 来看看两种好玩的方法,扩展方法和分部方法
- php安装扩展的几种方法
- Java中的binarySearch方法
- 数据挖掘分类方法小结
- Pythonrandom模块(获取随机数)常用方法和使用例子
- python使用threading获取线程函数返回值的实现方法
- 数据挖掘之七种常用的方法_数据分析师
- c# string 扩展方法
- .NET/C#中对自定义对象集合进行自定义排序的方法
- 登陆iSQLPlus的设置方法(转)
- javascript:得到变量类型的方法(chrome 105.0.5195.125)
- vue.js3:父组件子组件互相访问数据方法(vue@3.2.37)
- 《从零开始学Swift》学习笔记(Day 50)——扩展计算属性、方法
- c# string 扩展方法
- Python - Pycharm的使用方法和技巧
- 《设计模式之禅》--工厂方法扩展:实现单例
- php安装扩展的几种方法
- C# 参数带this是什么意思(扩展方法)
- 41. SAP UI5 应用 Chrome 扩展 UI5 Inspector 的离线安装和使用方法
- SAP UI5 应用开发教程之四十一 - Chrome 扩展 UI5 Inspector 的离线安装和使用方法试读版
- Chrome扩展应用Angular state inspector的使用方法
- 【C#代码实战】群蚁算法理论与实践全攻略——旅行商等路径优化问题的新方法
- ADT(Android) — Eclipse开发连接夜神模拟器方法(亲测有效!)
- Python之pandas:pandas的get_dummies函数简介(one-hot编码/将字符串似的分类变量转为哑变量/虚拟/伪/指示符变量)及其使用方法之详细攻略
- AIGC:ChatGPT(一个里程碑式的对话聊天机器人)的简介(意义/功能/核心技术等)、使用方法(七类任务)、案例应用(提问基础性/事实性/逻辑性/创造性/开放性的问题以及编程相关)之详细攻略
- Java main方法_解释Java中的main方法,及其作用_一个java文件中可包含多个main方法
- 【Groovy】Groovy 扩展方法 ( Groovy 扩展方法引入 | 分析 Groovy 中 Thread 类的 start 扩展方法 )
- 算法学习笔记(八) 动态规划的一般求解方法
- js Array 阵列扩展方法
- C# 扩展方法
- 扩展方法