美文网首页
设计模式

设计模式

作者: watayouxiang | 来源:发表于2017-05-13 22:23 被阅读0次

    面向对象设计原则

    • 单一原则:
      • 每个对象只有一个单独的职责
      • 高内聚,低耦合
    • 开闭原则:
      • 一个对象对扩展开放,对修改关闭
      • 对类的改动是通过增加代码进行的,而不是修改现有的代码
    • 里氏替换原则:
      • 在任意父类出现的地方都可以用子类来替代
    • 依赖注入原则:
      • 要依赖于抽象,不要依赖于具体实现
      • 基本思想:在开发中面向接口编程
    • 接口分离原则:
      • 一个接口不要提供太多的方法
    • 迪米特原则:
      • 一个对象对其他对象要尽可能少的了解
      • 基本思想:低耦合
    • 使用组合而不是继承的原则:
      • 基本思想:在复用对象的时候,要优先考虑组合,而不是继承。因为父类的任何改变都会影响子类行为

    设计模式的分类

    • 创建型模式:创建对象
    • 结构型模式:对象的组成及对象的关系
    • 行为型模式:对象的行为(功能)

    常用的设计模式

    • 装饰模式:IO流中的Buffered缓冲区就是典型的装饰模式

    • 简单工厂模式

    • 工厂方法模式

    • 单例模式:懒汉式,饿汉式;Runtime类是一个单例类

        //饿汉式
        class Singleton {
            //1,私有构造函数
            private Singleton(){}
            //2,创建本类对象
            private static Singleton s = new Singleton();
            //3,对外提供公共的访问方法
            public static Singleton getInstance() {
                return s;
            }
        }   
      
        //懒汉式, 单例的延迟加载模式
        class Singleton {
            //1,私有构造函数
            private Singleton(){}
            //2,创建本类对象
            private static Singleton s;
            //3,对外提供公共的访问方法
            public static Singleton getInstance() {
                if(s == null){
                    s = new Singleton();
                }
                return s;
            }
        }
        
        // 第三种
        class Singleton {
            private Singleton() {}
            // final修饰的变量不可以被更改
            public static final Singleton s = new Singleton();
        }
      
    • 观察者模式

    • 代理模式

    • 适配器模式

      • 什么是适配器
        • 在使用监听器的时候, 需要定义一个类事件监听器接口
        • 通常接口中有多个方法, 而程序中不一定所有的都用到, 但又必须重写, 这很繁琐
        • 适配器简化了这些操作, 我们定义监听器时只要继承适配器, 然后重写需要的方法即可
      • 适配器原理
        • 适配器就是一个类, 实现了监听器接口, 所有抽象方法都重写了, 但是方法全是空的
        • 目的就是为了简化程序员的操作, 定义监听器时继承适配器, 只重写需要的方法就可以了
    • 模板设计模式

    相关文章

      网友评论

          本文标题:设计模式

          本文链接:https://www.haomeiwen.com/subject/rmdfxxtx.html