总共分为三大类,创建型、结构型和行为型。
创建型和对象的建立有关,结构型用于处理类和对象的组合,行为型描述类与对象怎样交互和怎样分配职责。
桥接:将对象的抽象和其实现分离,从而独立地改变它们。
组合:结构型对象模式的一个实例
外观:如何用单个对象表示整个子系统。为子系统中的一组接口提供一个一致的界面。
单例:保证一个类只产生唯一的一个实例。
适配器:将一个类或对象的接口转换为客户希望的另一个接口
装饰器:动态给一个对象添加职责。
命令:将一个请求封装为一个对象,从而使使用者可以采用不同的请求对客户进行参数化。
观察者:使用者可以在不改变各元素的类的前提下定义作用于这写元素的新操作。
状态:使得一个对象子在其内部状态改变时调用另一个类中的方法改变其行为,使得这个对象看起来如同修改了她的类。
策略:定义一系列算法,将其一个个封装起来,并且使它们可相互替换。使得算法可独立于它的客户而变化。
抽象工厂:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。
责任链:使多个而对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系,将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象请求它为止。
生成器:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
工厂方法:定义一个用于创建对象的接口,让子类决定将那个类实例化。
中介者:用一个中介对象来封装一系列的对象交互。