zoukankan      html  css  js  c++  java
  • Asp.Net 设计模式 之 “特殊”的单例模式

    • 特殊的单例模式

    要点在这里,提前预览:

    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指代得失当前的SingleDemo
    18             //将单例变量初始化
    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 Program
    30     {
    31         static void Main(string[] args)
    32         {
    33             //调用无参构造函数,实例化SingleDemo这个类,使this关键字初始化,并能够调用构造函数
    34             //instance=sd
    35             //注意: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 }
  • 相关阅读:
    LeetCode70.爬楼梯
    LeetCode9.回文数
    LeetCode8.字符串转整数(atoi)
    LeetCode7.反转整数
    Docker深入浅出3-镜像管理
    Docker深入浅出3-容器管理
    Docker深入浅出2
    Docker深入浅出1
    Docker启动mysql的坑2
    各种常见兼容代码
  • 原文地址:https://www.cnblogs.com/pang951189/p/7801986.html
Copyright © 2011-2022 走看看