• 设计模式的原则


    GoF设计模式的原则:


    1、开发-封闭原则:开发接口,封闭修改;

    2、依赖倒转原则:抽象类不应该依赖实现类,实现类依赖抽象类。

    3、里氏代换原则:所有父类都可以替换子类;

    4、迪米特法则:如果两个类不必彼此直接通信,那么这两个类就不应该发生直接的相互作用。如果其中一个类需要调用另外一个类的某一个方法的话,可以直接通过第三者调用;

    单例模式:

    单例模式只是为了实现一个对象存储一个物理内存,可被N个调用,调用的就是一个对象;这样做的好处,一、节省内存;二、数据封装;没必要其他元素访问和修改的;实现的方式如下:

    第一种最简单,但没有考虑线程安全,在多线程时可能会出问题:

    public class Singleton
    {
        private static Singleton _instance = null;
        private Singleton(){}
        public static Singleton CreateInstance()
        {
            if(_instance == null)
    
            {
                _instance = new Singleton();
            }
            return _instance;
        }
    }

    第二种考虑了线程安全,不过有点烦: 

    public class Singleton
    {
        private volatile static Singleton _instance = null;
        private static readonly object lockHelper = new object();
        private Singleton(){}
        public static Singleton CreateInstance()
        {
            if(_instance == null)
            {
                lock(lockHelper)
                {
                    if(_instance == null)
                         _instance = new Singleton();
                }
            }
            return _instance;
        }
    }

    单例模式参考博客:http://www.cnblogs.com/promise-7/archive/2012/05/10/2494275.html

  • 相关阅读:
    Javascript 如何识别数组
    新手 如何搭建一个vue项目详解
    javasScript 七种数据类型
    WPF实现动画的几种方式及其小案例
    问题清单
    2020软件工程个人作业06——软件工程实践总结作业
    我的“捡漏”生涯——小黄衫篇
    2020软件工程作业05
    2020软件工程作业03
    Python: list indices must be integers or slices, not float问题
  • 原文地址:https://www.cnblogs.com/xibei666/p/4419161.html
Copyright © 2020-2023  润新知