标签:
一.3大类设计模式:创建型,结构型,行为型。
a.5种创建型模式:工厂方法,抽象工厂,单例,建造者,原型。
b.7种结构型模式:适配器,装饰器,代理,外观,桥接,组合,享元。
c.11种行为型模式:策略,模板方法,观察者,迭代子,责任链,命令,备忘录,
状态,访问者,中介者,解释器。
注意:除上述3大类外,还有另2类设计模式:并发型,线程池。
二.设计模式6大原则:开闭,里氏代换,依赖倒转,接口隔离,迪米特(最少知道),合成复用。
a.开闭:对拓展开发,对修改关闭。程序进行拓展时,不能修改原有的代码,我们需要使用接口和抽象类。
b.里氏代换(LSP):面向对象设计的基本原则之一,对开闭原则的补充。任何基类可以出现的地方,子类一定出现。子类继承基类,不影响基类的前提下,增加新的方法与功能,基类代码就得以被复用。
c.依赖倒转:开闭原则的基础,针对接口编程,依赖于抽象不依赖于具体。
d.接口隔离:使用多个隔离接口比使用单个接口好。
e.迪米特(最少知道):一个实体应该尽量少的与其他实体之间发生相互作用,使得系统功能模块相对独立。
f:合成复用原则:尽量使用合成/聚合的方式,而不是继承。
三.23种设计模式。
1.3种工厂方法模式:普通工厂,多个工厂方法。
a.普通工厂:建立一个工厂类,对实现同一接口的类进行实例创建的过程。
父接口:
public interface Sender{ public void Send(); }
实现类:
public class MailSender implements Sender{ @Override public void Send(){ System.out.println("this is mailSender!"); } }
标签:
原文地址:http://www.cnblogs.com/kuiyeit/p/4845898.html