1.工厂方法设计模式:定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法是一个类的实例化延迟到其子类中
2.抽象工厂:提供一个创建一系列相关或者相互依赖对象的接口,而无需指定他们具体的类
3.原型模式:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。
4.构造器:将一个复杂的对象的构造与他的表示分离,使得同样的构造过程可以创建不同的表示。
5.门面模式:为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
6.中介者模式:用一个中介对象来封装一系列的对象交互。中介者使得各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。
7.代理模式:为其它对象提供一种代理一控制对这个对象的访问。
8.适配器模式:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。