博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
单体设计模式
阅读量:6859 次
发布时间:2019-06-26

本文共 1106 字,大约阅读时间需要 3 分钟。

单体模式

简单介绍:

     单体模式:保证一个类仅有一个实例,并提供一个訪问它的全局訪问点。

实现思路

     假设要求该类仅仅能实例化一次,通常的做法是:

1、  在类中声明一个标志变量。用来查看该类是否被实例化。

2、  将该类的构造函数私有化,使其仅仅能在类中訪问。

3、  写一个静态方法。用于外面调用实例化类。假设类已经存在则就不再实例化。

实现

   这里用一个person类举例。

创建一个person类

public class Person    {      private static Person person =null;      private DateTime _birthday=newDateTime(1990,12,12);       public DateTime Birthday      {          get { return _birthday; }          set { _birthday = value; }      }      private Person()      {      }      public static PersonGetInstance()      {          if (person == null)          {              person = new Person();          }          return person;      }}

在外部调用方法

static void Main(string[] args)        {            Person person = Person.GetInstance();            DateTime birthday = DateTime.Now;            person.Birthday =birthday;            Console.WriteLine("{0:D}",person.Birthday);             //再次的到实例            Person per = Person.GetInstance();            Console.WriteLine("{0:D}",per.Birthday);            Console.Read();         }

执行输出的都是当前日期,可见是同一个实例。

总结

     受曾经辈教导:參加工作。要对自己写的代码做整理。最好要有自己的代码库,不要遇到做过的问题再又一次做一遍。

转载地址:http://tdxyl.baihongyu.com/

你可能感兴趣的文章
第三百四十一节,Python分布式爬虫打造搜索引擎Scrapy精讲—编写spiders爬虫文件循环抓取内容—meta属性返回指定值给回调函数—Scrapy内置图片下载器...
查看>>
温故而知新-String类
查看>>
JS控制div跳转到指定的位置的几种解决方案总结
查看>>
《图说VR》——HTC Vive控制器按键事件解耦使用
查看>>
【Java学习笔记之十一】Java中常用的8大排序算法详解总结
查看>>
android studio使用真机测试时点击Debug调试模式时报Error running app:No target device found,点击运行模式却是启动正常的...
查看>>
洛谷 P1553 数字反转(升级版)【字符串+STL stack】
查看>>
【javascript】异步编年史,从“纯回调”到Promise
查看>>
C# WinForm开发系列 - Form/Window
查看>>
python 读取单所有json数据写入mongodb(单个)
查看>>
ZooKeeper可视化Web管理工具收集(待实践)
查看>>
linux pthread【转】
查看>>
EF基础知识小记三(设计器=>数据库)
查看>>
Mybatis系列(四):Mybatis缓存
查看>>
python中的列表、元组、数组——是不是特别容易混淆啊??
查看>>
phpmyadmin 自动登录的办法
查看>>
苹果各版本手机更换电池的视频
查看>>
在Centos7.x中安装psutil模块
查看>>
深度学习的异构加速技术(二):螺狮壳里做道场
查看>>
html5--1.10绝对路径和相对路径
查看>>