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也跟着改变

  • 相关阅读:
    Linux实验:NTP网络时间服务器
    局域网访问虚拟机内服务器
    Linux实验:ssh免密码配置
    Kali在NET模式下不能联网的解决方法
    centos7安装redis
    外部服务发现-ingress
    自动化运维-Ansible-playbook
    自动化运维-ansible入门篇
    pod健康检查(liveness probe存活探针&&readiness probe 可读性探针)
    python面试总结4(算法与内置数据结构)
  • 原文地址:https://www.cnblogs.com/automation/p/2870001.html
Copyright © 2011-2022 走看看