首页 > 其他 > 详细

单件模式

时间:2014-02-21 12:37:14      阅读:296      评论:0      收藏:0      [点我收藏+]

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

我之前的概念搞混了,以为只要一个实例就是单件模式。它最主要的是提供一个访问它的全局访问点,也就是多次访问,一个类的实例地址。

代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using System;
 
namespace GlobalSpooler
{
    /// <summary>
    /// Summary description for Spooler.
    /// </summary>
    public class Spooler     {
        private static Spooler MySpooler ;
        private static bool instance_flag= false;
        private Spooler()  {
            instance_flag = true;
        }
        public static Spooler getSpooler() {
            if (! instance_flag)
                MySpooler = new Spooler ();
             return MySpooler;
        }
 
    }
}

Main访问代码

bubuko.com,布布扣
using System;

namespace GlobalSpooler
{
    /// <summary>
    /// Summary description for Class1.
    /// </summary>
    class GlobSpooler
    {
        static void Main(string[] args)
        {
            Spooler sp1 = Spooler.getSpooler();
            if (sp1 != null)
                Console.WriteLine("Got 1 spooler");
            Spooler sp2 = Spooler.getSpooler();
            if (sp2 == null)
                Console.WriteLine("Can\‘t get spooler");

           if (sp1==sp2)
             Console.WriteLine ("They are same.");
          else
            Console.WriteLine ("They are not same.");

            //fails at compile time
            //Spooler sp3 = new Spooler();
        }
    }
}
bubuko.com,布布扣

单件模式

原文:http://www.cnblogs.com/chinaagan/p/3558518.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!