5---7---11
1.Creativeness
1.1 Singleton-----------private static class InnerClass{ new Singleton()}
1.2 Prototype-------------实现Cloneable 使用ObjectxxxputStream ByteArrayxxxputStream
1.3 Factory--------------抽象工厂,抽象产品,一个工厂生产一个产品
1.4 Abstract Factory-------多个工厂,每个工厂生产多个产品
1.5 Builder---------------将一个复杂对象的构造与它的表示分离
2.Structual
2.1 Proxy-----------限制、增强或修改该对象的一些特性()
2.2 Adapter---------将一个类的接口转换成客户希望的另外一个接口
2.3 Bridge------------abstract extend 将抽象与实现分离,使它们可以独立变化
2.4 Decorator---------动态地给对象增加一些职责
2.5 Facade----------为多个复杂的子系统提供一个一致的接口,使这些子系统更加容易被访问
2.6 Flyweight---------map 运用共享技术来有效地支持大量细粒度对象的复用
2.7 Composite---------branch leaf 将对象组合成树状层次结构,使用户对单个对象和组合对象具有一致的访问性
4.Behavioural
3.1 Template-------封装算法,顺序稳定,抽象可变
3.2 Strategy---------封装算法,可整体替换
3.3 Chain of Repository---------next 指向下一个
3.4 State-------状态之间有关系
3.5 Command-------封装请求
3.6 Observer--------监听目标
3.7 Mediator--------注册和转发
3.8 Visitor---------访问不同元素有不同的行为
3.9 Iterator---------聚合,迭代
3.10 Memento----------发起人,管理者,备忘录
3.11 Interpreter---------解释规则