• 单例模式


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

    实现原理:(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也跟着改变

  • 相关阅读:
    Java的参数传递是值传递还是引用传递
    10张图带你深入理解Docker容器和镜像
    Java 如何有效地避免OOM:善于利用软引用和弱引用
    事务与一致性:刚性or柔性
    Java 面试题史上最强整理
    三张图秒懂Redis集群设计原理
    iOS开发笔记系列-基础4(变量与数据类型)
    iOS开发笔记系列-基础3(多态、动态类型和动态绑定)
    iOS开发笔记系列-基础2(类)
    iOS开发笔记系列-基础1(数据类型与表达式)
  • 原文地址:https://www.cnblogs.com/automation/p/2870001.html
Copyright © 2020-2023  润新知