[导读]
[设计模式整理笔记 一] 基础知识
[设计模式整理笔记 二] 简单工厂模式(Simple Factory)
[设计模式整理笔记 三] 工厂模式(Factory)
[设计模式整理笔记 四] 抽象工厂模式(Abstract Factory)
[设计模式整理笔记 五] 创建者模式(Builder)
[设计模式整理笔记 六] 工厂模式与创建者模式总结
[设计模式整理笔记 七] 原型模式(ProtoType)
[设计模式整理笔记 八] 单例模式(Singleton)
[设计模式整理笔记 九] 外观模式(Facade)
....后续, 包括部分例子
[/导读]
单例模式含义, 一看字面就知道了, 就是一个类只有一个实例。分二种: 饿汉式与懒汉式。 怎理解饿汉式呢? 也就是在类初始化时就创建了自身对象, 典型的理解就是一个好饿的人, 一开始时就就吃了东西。 懒汉式由是需要的时候才创建自身对象, 典型的理解就是极懒的人, 不会先做任何事情, 都是把事情一定是需要做的时候才会做。
下面看一下单例模式的现实:
定义一个类:

using System;
namespace ConsoleApp
{
public class SubCompany
{
public SubCompany()
{
}
public static SubCompany Instance
{
get
{
if (instance == null)
{
instance = new SubCompany();
}
return instance;
}
}
private static SubCompany instance = null;
/// <summary>
/// 返回集团公司名称
/// </summary>
/// <returns></returns>
public string GetHeadName
{
get
{
return "中国移动";
}
}
}
}
namespace ConsoleApp
{
public class SubCompany
{
public SubCompany()
{
}
public static SubCompany Instance
{
get
{
if (instance == null)
{
instance = new SubCompany();
}
return instance;
}
}
private static SubCompany instance = null;
/// <summary>
/// 返回集团公司名称
/// </summary>
/// <returns></returns>
public string GetHeadName
{
get
{
return "中国移动";
}
}
}
}
调用如下:

using System;
namespace ConsoleApp
{
class Program
{
public static void Main(string[] args)
{
string HeadName = SubCompany.Instance.GetHeadName;
Console.WriteLine(HeadName);
Console.ReadLine();
}
}
}
namespace ConsoleApp
{
class Program
{
public static void Main(string[] args)
{
string HeadName = SubCompany.Instance.GetHeadName;
Console.WriteLine(HeadName);
Console.ReadLine();
}
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?