在java里类的关系大致分为三种,
1.继承(a is b):继承extends,实现implement
2.包含(a has b):组合>聚合>关联。关系亲密度越来越小,一个类在另一个类中声明为属性。
3.依赖(a use b):一个类中用到了别的类对象,比如a类的方法中创建b的对象并使用其属性跟方法。
类的关系设计原则:高内聚,低耦合(继承>组合>聚合>关联>依赖)
高内聚:尽可能类的每个成员方法只完成一件事(最大限度的聚合)
低耦合:减少类内部,一个成员方法调用另一个成员方法。从类角度来看, 减少类内部,对其他类的调用;从功能块来看 ,减少模块之间的交互复杂度(接口数量,参数数据)即横向:类与类之间、模块与模块之间;纵向:层次之间;尽可能,内容内聚,数据耦合