单例模式
来源:互联网 发布:linux arp高速缓存表 编辑:程序博客网 时间:2024/06/04 18:47
所谓单例模式就是:只能实例化一个对象。
建一个类叫China 它只有一个首都Capital 符合单例模式的要求
实现单例模式的步骤:
1:要把构造函数的访问级别设置为private,因为实例化的对象的本质是调用类的构造函数,所以要把构造函数的的访问级别设置为私有的
2:设置一个访问器来让外界调用,就像定义普通的属性一样
// 创建一个China类
class China
{
// 定义一个访问器
private static China instance = new China();
public static China getInstance
{
get
{
return instance;
}
}
/// <summary>
/// 定义为私有的构造函数
/// </summary>
private China()
{
}
private string _capital;
public string Capital
{
get{return _capital;}
set { _capital = value; }
}
}
// 实例化对象的方法
public static void get()
{
// 实例化对象 即使实例化再多对象,实质还是一个instance
China china = China.getInstance;
China china2 = China.getInstance;
// 证明一下是同一个对象
// 结果为true,说明是同一个对象,就实现了单例模式
Console.WriteLine(object.ReferenceEquals(china, china2));
// 这样调用会报错,提示是受保护级别限制
// China china3 = new China();
}
- 单例、单例模式
- 单例模式-多线程单例模式
- 单件模式(单例模式)
- 设计模式------单例模式
- 设计模式------单例模式
- 设计模式-单例模式
- 设计模式 - 单例模式
- 设计模式---单例模式
- 设计模式---单例模式
- PHP模式-单例模式
- 【设计模式】单例模式
- 设计模式-单例模式
- 设计模式----单例模式
- 设计模式--单例模式
- 设计模式-单例模式
- 单例模式(单子模式)
- 设计模式-单例模式
- [设计模式] 单例模式
- QTableView 和 predefined Models
- 数据结构C语言实现之串
- Eclipse Console 加大显示的行数,禁止弹出
- struts2拦截器(六)
- 【★更新★】高性能 Windows C++ 通用组件 VC-Logger v2.0.3 正式发布
- 单例模式
- Servlet之Session--不同用户页面共享
- 【★更新★】高性能 Windows C++ 通用组件 VC-Logger v2.0.3 正式发布
- KMP字符串模式匹配详解
- Why model/view is preferred to widget?
- NetworkX学习笔记-3-Python中输出Gephi文件格式的方法
- 【Java公共类】分页Page开发
- mysql批量更新
- Using netcat to copy files between servers