1. 首页
  2. 编程语言
  3. C#
  4. c# 单例模式的实现

c# 单例模式的实现

上传者: 2021-06-05 07:57:34上传 PDF文件 77.20 KB 热度 26次

  记一下学习单例模式的笔记:  单例就是要保证该类仅有一个实例。实现完全封闭的单例其实就要两点要求:。  根据new实例的时机,分为饿汉式和懒汉式:一、 饿汉式单例:静态变量初始化时new  特点:加载时new,一开始全局就存在该唯一实例,每次用到只要获取就行,提前占用系统资源但不存在线程安全问题。有线程安全问题,但可以用双重锁定解决。  实现代码如下:  可以看到这种单例通过继承的方式,既可以new实例也可以获取单例实例。如果要实现上面的完全封闭,也可以完全在Person类中写个私有构造器在Singleton类中实例的获取new T()改为反射调用私有构造器的方式实现,总感觉怪怪的。  下面是主程序调用该单例方法:  输出结果:

下载地址
用户评论