Android面试题——掘金-架构之23种设计模式(6.2)
一 概述
1 | 以下是面试中经常考察的 Android 架构 & 设计模式相关题目: |
二 设计模式分类(总览)
类型 | 设计模式(23种) |
---|---|
创建型 | 单例、工厂方法、抽象工厂、建造者、原型 |
结构型 | 适配器、装饰器、代理、外观、桥接、组合、享元 |
行为型 | 策略、模板方法、观察者、责任链、命令、备忘录、状态、迭代器、解释器、中介者、访问者 |
二 面试题解答(仅供参考)
2.1 单例模式(Singleton)
1 | 1.作用:保证一个类只有一个实例 |
2.2 工厂方法(Factory Method)
1 | 1.作用:统一创建对象,封装细节 |
2.3 建造者模式(Builder)
1 | 1.作用:用于构建复杂对象,链式调用 |
2.4 原型模式(Prototype)
1 | 1.作用:对象复制 |
2.5 适配器模式(Adapter)
1 | 1.作用:转换接口使类能协同工作 |
2.6 装饰器模式(Decorator)
1 | 1.作用:动态扩展功能 |
2.7 代理模式(Proxy)
1 | 2.作用:为对象提供一个代理以控制访问 |
2.8 外观模式(Facade)
1 | 1.作用:简化调用,统一入口 |
2.9 桥接模式(Bridge)
1 | 1.作用:分离抽象与实现,解耦变化 |
2.10 组合模式(Composite)
1 | 1.作用:组合对象成树形结构 |
2.11 享元模式(Flyweight)
1 | 1.作用:共享对象,节省内存 |
2.12 策略模式(Strategy)
1 | 1.作用:可替换算法、行为 |
2.13 模板方法模式(Template Method)
1 | 1.作用:定义算法结构,子类定实现 |
2.14 观察者模式(Observer)
1 | 1.作用:对象间通知机制 |
2.15 责任链模式(Chain of Responsibility)
1 | 1.作用:多个处理者按顺序处理请求 |
2.16 命令模式(Command)
1 | 1.作用:封装请求为对象,支持撤销、重做等 |
2.17 状态模式(State)
1 | 1.作用:对象行为随状态改变 |
2.18 备忘录模式(Memento)
1 | 1.作用:保存对象状态,支持恢复 |
2.19 迭代器模式(Iterator)
1 | 1.作用:顺序访问容器元素 |
2.20 解释器模式(Interpreter)
1 | 1.作用:定义语言语法并解释执行 |
2.21 中介者模式(Mediator)
1 | 1.作用:减少对象间依赖,由中介统一调度 |
2.22 访问者模式(Visitor)
1 | 1.作用:对对象结构执行操作(不修改对象) |
三 参考
- 掘金—知识库的大纲