创建型:
    单例模式:推荐枚举、静态内部类、双重检查锁、饿汉式
    简单工厂模式:定义一个类,封装实例化对象的过程
    工厂方法模式:在工厂类中定义一个公共抽象方法,在子类中实现抽象方法,从而达到拓展的目的
    抽象工厂模式:使用接口来定义抽象方法,多态的应用
    结构型:
    适配器模式
    类适配器:
    对象适配器:推荐使用
    接口适配器:SpringMVC 处理器适配器
    装饰者模式:JDK IO
    行为型
    模板方法:抽象类中定义若干通用步骤,然后实现一个final方法,其中调用已定义好的抽象方法;子类各自重写父类中的通用方法,最后达到目的,各个子步骤可以有区别,但是总体流程是固定的
    观察者模式: