- 特殊的单例模式
要点在这里,提前预览:
public SingleDemo() {
???????????name = "yy";
???????????age = 20;
???????????//特殊的单例,this指代得失当前的SingleDemo
???????????//将单例变量初始化
???????????instance = this;
???????}
- 源码部分:
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 ?7 namespace SingleCaseModel 8 { 9 ????class SingleDemo {10 ????????public static SingleDemo instance;11 ????????public string name;12 ????????public int age;13 ????????//可以是无参构造函数14 ????????public SingleDemo() {15 ????????????name = "yy";16 ????????????age = 20;17 ????????????//特殊的单例,this指代得失当前的SingleDemo18 ????????????//将单例变量初始化19 ????????????instance = this;20 ????????}21 ????????//也可以写成有参构造函数22 ????????public SingleDemo(string n,int a) {23 ????????????name = n;24 ????????????age = a;25 ????????????//将单例变量初始化26 ????????????instance = this;27 ????????}28 ????}29 ????class Program30 ????{31 ????????static void Main(string[] args)32 ????????{33 ????????????//调用无参构造函数,实例化SingleDemo这个类,使this关键字初始化,并能够调用构造函数34 ????????????//instance=sd35 ????????????//注意:SingleDemo sd = new SingleDemo();只能实例化一次,不能实例多个,36 ????????????//否则将以最后实力的一个为基础来进行使用37 ????????????SingleDemo sd = new SingleDemo();38 ????????????Console.WriteLine(SingleDemo.instance.name);39 ????????????//写成如下方式也可以,只是如果是在另外的其他页面进行调用单例模式的话,要写成上面这种40 ????????????//Console.WriteLine(sd.name);41 ????????????Console.ReadKey();42 ????????}43 ????}44 }
Asp.Net 设计模式 之 “”特殊“”的单例模式
原文地址:http://www.cnblogs.com/pang951189/p/7801986.html