0%

设计模式

一、 设计模式分类

23 种设计模式分为 创建型、 结构型、 行为型 3 类.

分别包含:

  1. 创建型(5种)
    工厂方法、 抽象工厂、 单例模式、 建造者模式、 原型模式。

  2. 结构型(7种)
    适配器、 装饰器、 代理模式、 外观模式、 桥接模式、 组合模式、 享元模式(?)。

  3. 行为型(11种)
    策略模式、 模板方法、 观察者、 迭代器、 责任链、 命令模式、 备忘录模式、 状态机模式、 访问者模式、 中介者模式、 解释器模式。


二、 创建型

1. 工厂模式

1.1 简单工厂

角色:
(1) 一个工厂类,带有一个静态方法,传入一个类型,返回一个对象;
(2) 一个产品接口类;
(3) 多个产品实现类。

示意图

示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public interface IFruit {
void name();
}

public class Apple extends IFruit {
void name() {
return "苹果";
}
}

public class Banana extends IFruit {
void name() {
return "香蕉";
}
}

public class FruitFactory {
IFruit create(String type) {
case "apple": return new Apple();
case "banana": return new Banana();
}
return null;
}

1.2 工厂方法

角色:

三、 结构型

四、 行为型