• 设计模式-遇见的场景


    一、单例模式

    1.单例模式的特点

      - 私有构造器

      - 私有自己属性

      - 对外静态实例方法

    2.分类

      懒汉式

        用到的时候再去创建,有延迟加载的作用

        线程不安全

      饿汉式:

        一开始就创建好,但是容易产生垃圾

        线程安全

      双重检测锁(DCL):

        第一次检查为了不必要的锁;

        第二次检查,是检查当前线程,返回实例;

        volatile是保证线程的可见性、静止指令重排 

    3.应用

      Spring bean作用域是单例的,就利用了单例模式

    二、工厂模式


    1.工厂可以代替new,给我们生产对象
    2.Spring的ioc就利用了工厂模式,具体:ApplicationContext和BeanFactory


    三、代理模式


    1.通过代理类,我们可以访问到被代理类的某些方法,并且在执行该方法的前后进行一些拦截操作
    2.springAOP


    四、设配器模式


    1.适配一些不兼容的接口,比如Springmvc中的HandlerAdper,他就是用来适配不同实现方式的controller的
    2.controller的三种实现方式:Controller接口,HttpRequestHandler接口,@Controller注解


    五、策略模式


    比较器Comparators,线程池的四种拒绝策略


    六、模板模式

    1.定义模板,具体实现由子类来实现
    AQS

  • 相关阅读:
    mysql 练习
    linux 常用软件安装-目录
    Python 三大神器
    Mysql 数据库安装配置
    Mysql数据库入门
    maven的安装与基本使用
    分布式事务
    分布式锁
    springcloud学习笔记
    springboot入门使用
  • 原文地址:https://www.cnblogs.com/yejiang/p/13507835.html
Copyright © 2020-2023  润新知