总体思想:高内聚低耦合
一、SOLID原则
1、开闭原则(OCP):面向修改封闭,面向扩展开放
2、里氏代换原则(LSP):泛型、多态
class Element<T extends Comparabla<T>>{
public <E extends T> void method(){E e}
}
3、依赖倒转原则(DIP):依赖抽象而不依赖具体
4、接口隔离原则(ISP):接口应该尽可能的小,提倡类多实现接口;接口功能界限根据共享程度切割边界
5、迪米特法则(DP):尽量不和外界交互(独立)
6、合成复用原则(CRP):尽量使用组合、聚合而不用继承
1、创建型模式
单例singleton:懒汉、饿汉 始终只有一个对象
工厂模式Factory:根据需要创建对象
抽象工厂abstract factory:工厂的工厂
建造者模式builder:适配构建,选择性配置
原型模式prototype:克隆
2、结构型模式
享元模式flyweight:重用已有对象(数组扩缩容)
适配器模式adapter:接口转化为客户需要的
3、行为模式
策略模式strategy:排序(重载,参数化差异,自动响应)
观察者模式observer:update():注册共享(observable:register,remove,notifyAll)
迭代器模式:iterator:容器