zoukankan      html  css  js  c++  java
  • 设计模式之单例模式代码示例

    using System;
    namespace SingletonFunc{
        public class Singleton{
    
            private static object obj = new object();
            private static Singleton singleton;
    
            public static Singleton CreateSingleton()
            {
                if(singleton == null){
                    lock(obj)
                    {
                        if(singleton == null)
                        {
                            singleton = new Singleton();
                        }
                    }
                }
                return singleton;
            }
            
            public override bool Equals(object obj)
            {
                if(obj == null) return false;
                if(singleton == obj as Singleton) return true;
                else 
                    return false;
            }
        }
    
        public class EntryPoint{
            
            public static void Main(string[] args){
                Singleton singleton1 = Singleton.CreateSingleton();
                Singleton singleton2 = Singleton.CreateSingleton();
    //            bool compare = System.Object.ReferenceEquals(singleton1,singleton2);
                bool compare = System.Object.Equals(singleton1,singleton2);
                compare = singleton1.Equals(singleton2);
                if(compare){
                    Console.Write("true");
                }
                else{
                    Console.Write("false");
                }
                Console.Read();
            }
        }
    }
  • 相关阅读:
    JAVA-Map学习
    javaweb--cc1分析(1)
    thinkphp5.0.24 unserialize
    Windows API hook技术
    javaweb-JNDI注入
    了解WMI
    了解PSexec
    Exchange- (CVE-2021-26855)SSRF分析
    递归-实现省市区三级联动
    golang random string
  • 原文地址:https://www.cnblogs.com/zhangchenliang/p/2651558.html
Copyright © 2011-2022 走看看