经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » Java相关 » 设计模式 » 查看文章
设计模式
来源:cnblogs  作者:巧合  时间:2020/11/16 10:26:45  对本文有异议

设计模式总共23种,可以归结为3大类

  1. 创建型:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
  2. 结构型:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
  3. 行为型:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

比较常用的设计模式有:单例模式、工厂模式、代理模式、构造者模式、责任链模式、适配器模式、观察者模式等。

单例模式

单例模式是最常见的设计模式了,这里主要说一下这种设计模式的实现方式

  1. 静态初始化方式(饿汉方式),顾名思义,也就是在初始类的时候实现单例的创建,这种方式不会产生并发问题,缺点是无论会不会使用都会创建对象占用资源。
  2. 双重检查方式(懒汉方式),这种方式就是只有在真正使用的时候才去初始化单例,这样就不可避免的有并发问题了,这里可以加 synchronized 或者 lock。
  3. 单例注册表方式,其实也就是 Spring 中 Bean 的单例模式。

工厂模式

工厂模式主要用来创建不通的实例,例如 Spring 中各种 Bean 的创建。

代理模式

代理模式就是指不直接引用另一个对象,可以通过这种方式对被代理对象的访问进行控制。其中代理模式又分为静态代理和动态代理,静态代理就是指写死在源代码里的,动态代理是指在 JVM 运行过程中动态创建的代理类,一般有 JDK 动态代理、CGLIB 等。

构造者模式

构造者模式主要适用于一个对象有很多复杂的属性,需要根据不同情况创建不同的具体对象,就是我们平时用的 builder 模式。

责任链模式

责任链模式有点像工厂的流水线,链上每一个节点完成对对象的某一种处理。

适配器模式

适配器模式就是把两种不匹配的对象进行适配,类似于转接头,例如 SLF4J 。

观察者模式

观察者模式也叫做发布订阅模式,意指一个对象的行为会触发其他一系列的事件。

原文链接:http://www.cnblogs.com/joker0023/p/13969249.html

 友情链接: NPS