zoukankan      html  css  js  c++  java
  • 23种设计模式

    23种设计模式

    单例模式:

    饿汉式:

    三个注意点

    1. 私有构造器

    2. 创建私有属性(创建一个私有对象,类初始化时,立即加载私有对象)

    3. 提供一个访问方法

    优点:线程安全,调用效率高,类加载时就加载

    懒汉式

    注意三点

    1.私有构造器

    2.创建私有属性(创建对象为null,不初始化,延时加载,真正用的时候在加载)

    3.提供一个访问方法(加同步synchronized,调用后效率低)

    优点:线程安全,调用效率低,延时加载

    双重检测所模式

    静态内部类实现方式

    注意三点

    1创建内部类,并且创建内部私有外部类的对象

    2私有化构造器

    3提供外部类访问方法,返回值为内部类.创建的私有对象,不需要同步。

    优点:线程安全,调用效率高,延时加载

    枚举单例模式

    注意点:

    1枚举类定义枚举元素(本身就2是单例对象)

    3定义普通方法

    4私有构造器

    缺点:无延时加载

    反射破解单例:

    序列化反序列化

    b) 代码

     

    工厂模式(创建实例化对象,增加新对象)

    简单工厂模式

    1.违反了开闭(OCP)原则(创建新对象,需要修改已有的代码),扩展性差

    2.与工厂和接口打交道

     

    工厂方法模式

    1.实现各个产品的工厂(Factory接口各个工厂实现Factory接口)

    2.实现开闭(OCP)原则

     

    抽象工厂模式

    1.保留了开闭原则(OCP),可以增加产品和产品组

    2. 

  • 相关阅读:
    使用Ant自动化发布web工程
    分页过滤SQL求总条数SQL正则
    Spark-Java版本WordCount示例
    Apache-Tika解析Word文档
    Apache-Tika解析JPEG文档
    Apache-Tika解析HTML文档
    Apache-Tika解析XML文档
    Apache-Tika解析Excell文档
    @RestController注解的使用
    @ResponseBody注解的使用
  • 原文地址:https://www.cnblogs.com/2070393244com/p/9465636.html
Copyright © 2011-2022 走看看