zoukankan      html  css  js  c++  java
  • 2.5 Singleton(单件)

    【返回目录】

    用面向对象的术语来描述人类的话,我们每个人都是人类这个类的一个实例,当然,如果细分的话还可以在人类下面分出很多子类,不过我们要说的重点不是这个类的层级划分。我们都知道,毛主席也是人类的一个实例,但是无论西方人、东方人还是非洲人都不可能忽视毛主席,他们一提到中国,可能首先想到的就是“毛主席”这三个字,其它的每个中国人在他们眼里可能就不那么招眼,在他们看来无非是黄皮肤黑头发的一个人而已,虽然毛主席也是这样的特征,但是他们却把他很清晰、很明确地分离出来,作为中国人的象征。作为中国乃至世界的伟人,全人类只有一个毛主席,虽然我们也常说“我就是我”,表明这世界上“只有一个我”,但我说过了,在别人眼里,我们可以忽略不计。“毛主席”可以很好地解释什么是Singleton(单件模式)。

    单件模式表示,一个类有且仅有一个实例,任何用到该类对象实例的地方都是在调用或操作这个类唯一的实例,比方说尼克松访华会见的不是每一个中国人而是毛主席。请看代码:

       1: using System;
       2:  
       3: namespace Autumoon.DesignPatterns.AbstractFacotry
       4: {
       5:     public class Human
       6:     {
       7:         public string Name { get; set; }
       8:     }
       9:  
      10:     public class Chinese : Human
      11:     {
      12:         private static Chinese _instance = null;
      13:         public static Chinese Instance
      14:         {
      15:             get { return ((_instance == null) ? _instance = new Chinese { Name = "Zedong Mao" } : _instance); }
      16:         }
      17:     }
      18: }

    毛主席是中国人的象征,所以人们一提到中国人就不由得首先想到毛主席:

       1: static void Main(string[] args)
       2: {
       3:     Console.WriteLine(Chinese.Instance.Name);
       4:  
       5:     Console.ReadLine();
       6: }
    Chairman
    转载请注明出处。版权所有©1983-2021 麦机长,保留所有权利。
  • 相关阅读:
    关于 数据库中 读写 Blob 字段的正确做法。
    C# wave mp3 播放器探寻
    公布Delphi热键注册源码
    Windows 下 Eclipse 集成开发环境演绎
    VS2012 MSHA 文件制做程序
    Erlang 学习笔记 (二) Debugger工具的使用
    Excel里数字列号转换为字符标签列
    串或序列的rotate操作
    64K动画技术剖析:Mod音乐的制作和使用
    64K动画 技术剖析之:Metaball
  • 原文地址:https://www.cnblogs.com/Autumoon/p/989431.html
Copyright © 2011-2022 走看看