zoukankan      html  css  js  c++  java
  • 单例模式

    单例模式就是确保一个类只有一个实例,并且该实例必须自动创建,并向整个系统提供该实例。

    实现原理:(1)将构造函数定义成私有或者受保护,使得不能通过构造函数来创建对象;(2)定义一个静态的方法提供公共接口,用于访问维一的实例。

    单例模式特征:(1)任何时刻单例类只能有一个实例;(2)单例类自己创建这个唯一的实例;(3)单例类必须给所有其他对象提供这个实例。

    class Single
            {
                static Single single;
                public static Single Default()
                {
                    if (single == null)
                    {
                        return single = new Single();
                    }
                    else
                    {
                        return single;
                    }
                }
    给这个类加个属性
     class Single
            {
                private Single()
                {
                    num = 10;
                }
                static Single single;
                public static Single Default()
                {
                    if (single == null)
                    {
                        return single = new Single();
                    }
                    else
                    {
                        return single;
                    }
                }
            public int num;
            }
    再主程序
    Single s1 = Single.Default();
                Console.WriteLine(s1.num);
                s1.num = 100;
                Single s2 = Single.Default();
                Console.WriteLine(s2.num);
                Console.ReadKey();
    image
    image
     

    s1,s2都是返回同样一个实例,堆栈中存储地址也一样,当s1.num改变,所以s2.num也跟着改变

  • 相关阅读:
    比较简短的拼音首字母自定义函数
    程序员之路——一个老程序员对刚上大学的学弟学妹的忠告
    Android应用程序请求SurfaceFlinger服务渲染Surface的过程分析
    对当前软件行业的一点点感想
    调用opengl程序代码
    windows平台下,c++获取cpu型号,读取注册表获取系统软硬件信息代码
    应该被记住的8位Java人物
    软件开发高手须掌握的4大SQL精髓语句(二)
    如何建立一个网站(我的5年经验谈)
    vs 2010 express 查看malloc能分配多少内存
  • 原文地址:https://www.cnblogs.com/automation/p/2870001.html
Copyright © 2011-2022 走看看