文章分类 - 设计模式
摘要:单例模式是23种GOF模式中最简单,也是最经常出现的一种设计模式,也是面试官最常爱考的一种模式,为什么呢? 因为单例模式足够简单,编写一个单例模式代码几分钟就能搞定,所以设计模式中面试官通常会选取单例模式作为出题。 下面把单例模式分几个点,分别说说哪些地方面试官能考你? 单例模式的意义 通常面试官会
阅读全文
摘要:设计模式 设计模式是什么 设计模式是一个通过定义、使用、测试去解决特定问题的方法,是针对软件设计中在给定条件下会重复性发生的问题而提出的一种通用性的可重用解决方案,设计模式不是可以直接转化为代码的完整设计,它是用于描述在不同情况下解决问题的通用方案。 设计模式的作用 设计模式通过提供经过验证的行之有
阅读全文
摘要:1. 适配器(Adapter) Intent 把一个类接口转换成另一个用户需要的接口。 Class Diagram Implementation 鸭子(Duck)和火鸡(Turkey)拥有不同的叫声,Duck 的叫声调用 quack() 方法,而 Turkey 调用 gobble() 方法。 要求将
阅读全文
摘要:责任链(Chain Of Responsibility) Intent 使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链发送该请求,直到有一个对象处理它为止。 Class Diagram Handler:定义处理请求的接口,并且实现后继链(s
阅读全文
摘要:5. 生成器(Builder) Intent 封装一个对象的构造过程,并允许按步骤构造。 Class Diagram Implementation 以下是一个简易的 StringBuilder 实现,参考了 JDK 1.8 源码。 public class AbstractStringBuilder
阅读全文
摘要:4. 抽象工厂(Abstract Factory) Intent 提供一个接口,用于创建 相关的对象家族 。 Class Diagram 抽象工厂模式创建的是对象家族,也就是很多对象而不是一个对象,并且这些对象是相关的,也就是说必须一起创建出来。而工厂方法模式只是用于创建一个对象,这和抽象工厂模式有
阅读全文
摘要:工厂方法(Factory Method) Intent 定义了一个创建对象的接口,但由子类决定要实例化哪个类。工厂方法把实例化操作推迟到子类。 Class Diagram 在简单工厂中,创建对象的是另一个类,而在工厂方法中,是由子类来创建对象。 下图中,Factory 有一个 doSomething
阅读全文
摘要:单例(Singleton) Intent 确保一个类只有一个实例,并提供该实例的全局访问点。 Class Diagram 使用一个私有构造函数、一个私有静态变量以及一个公有静态函数来实现。 私有构造函数保证了不能通过构造函数来创建对象实例,只能通过公有静态函数返回唯一的私有静态变量。 Impleme
阅读全文
摘要:面向对象思想 面向对象思想 一、三大特性 封装 继承 多态 二、类图 泛化关系 (Generalization) 实现关系 (Realization) 聚合关系 (Aggregation) 组合关系 (Composition) 关联关系 (Association) 依赖关系 (Dependency)
阅读全文
摘要:一、概述 - 设计模式怎么分类,每一类都有哪些?【蚂蚁金服内推】 - 设计模式怎么用到项目中?【阿里面经】 二、设计模式 单例模式 工厂模式 观察者模式 适配器模式(Adapter) 意图 类型 类图 实现 JDK 模仿方法模式 策略模式(Strategy) 意图 类图 与状态模式的比较 实
阅读全文
摘要:8.1 创建型模式对比 8.1.1 工厂方法模式制造超人 8.1.2 建造者模式制造超人 8.1.3 抽象工厂模式制造超人 8.2 结构型模式对比 8.2.1 代理模式 8.2.2 装饰模式 8.2.3 适配器模式 8.3 行为型模式对比 8.3.1 策略模式 8.3.2 命令模式 小结 附录A 2
阅读全文
摘要:7.1 混合设计模式简介 7.2 命令链模式 7.3 工厂策略模式 7.4 观察中介者模式 7.5 规格模式 小结
阅读全文
摘要:6.1 中介者模式 6.1.1 中介者模式的定义 6.1.2 中介者模式的应用 6.1.3 中介者模式的实例 6.2 观察者模式 6.2.1 观察者模式的定义 View Code View Code View Code View Code View Code 6.2.2 观察者模式的应用 6.2.3
阅读全文
摘要:5.1 行为型模式简述 5.2 模板方法模式 5.2.1 模板方法模式的定义 5.2.2 模板方法模式的应用 5.2.3 模板方法模式的实例 5.3 命令模式 5.3.1 命令模式的定义 5.3.2 命令模式的应用 5.3.3 命令模式的实例 5.4 责任链模式 5.4.1 责任链模式的定义 5.4
阅读全文
摘要:4.1 结构型模式简述 4.2 代理模式 4.2.1 代理模式的定义 4.2.2 代理模式的应用 4.2.3 代理模式的实例 4.3 装饰模式 4.3.1 装饰模式的定义 4.3.2 装饰模式的应用 4.3.3 装饰模式的实例 4.4 适配器模式 4.4.1 适配器模式的定义 4.4.2 适配器模式
阅读全文
摘要:3.1 创建型模式简述 3.2 单例模式 3.2.1 单例模式的定义 3.2.2 单例模式的应用 3.2.3 单例模式的实例 3.3 工厂方法模式 3.3.1 工厂方法模式的定义 3.3.2 工厂方法模式的应用 3.3.3 工厂方法模式的实例 3.4 抽象工厂模式 3.4.1 抽象工厂模式的定义 3
阅读全文
摘要:2.1 单一职责原则 2.1.1 单一职责原则的定义 2.1.2 单一职责原则的应用 2.2 里氏替换原则 2.2.1 里氏替换原则的定义 2.2.2 里氏替换原则的应用 2.3 依赖倒置原则 2.3.1 依赖倒置原则的定义 2.3.2 依赖倒置原则的应用 2.4 接口隔离原则 2.4.1 接口隔离
阅读全文
摘要:1.1 设计模式概念 1.2 设计模式简史 1.3 设计模式要素 1.4 设计模式分类 1.4.1 创建型 1.4.2 结构型 1.4.3 行为型 小结
阅读全文
摘要:9.1 设计模式简介 9.2 工厂模式的概念及Java实现 9.3 抽象工厂模式的概念及Java实现 9.4 单例模式的概念及Java实现 9.5 建造者模式的概念及Java实现 9.6 原型模式的概念及Java实现 9.7 适配器模式的概念及Java实现 9.8 装饰者模式的概念及Java实现 9
阅读全文
摘要:深入浅出外观模式(一):外观模式概述,外观模式结构与实现 2019-06-15 分类:优质系列文章 / 设计模式 阅读(467) 评论(0) 免费领取 2000+ 道 Java 面试题 作者:Liuwei-Sunny 出处:https://blog.csdn.net/lovelion 外观模式是一种
阅读全文