类之间的关系
首先从类之间的关系上包含:继承、依赖和关联
- 依赖(user-a): a 操纵 b 的对象称为 a 依赖于 b ,减少依赖就意味着降低类之间的耦合
- 关联(has-a):类 a 的对象包含类 b 的对象,也可以理解为关联
- 继承(is-a):继承另一个类的功能,并增加新的功能
依赖和关联
依赖和关联的区别在于一个是操作b 对象, 一个是包含 b 对象。
// 依赖
Class A {
// A 类中的方法参数为 B类 型
use(B b);
}
// 关联
Class A{
// B 类 作为 A 类的域
B b;
}
依赖: A 在使用 B 的时候这种关系是临时的,类似于,人用勺子喝汤,这时候人和勺子就是依赖;而在代码中体现为 A 中 use() 方法调用了B 作为参数。依赖的优势在于可以减少耦合度。
关联:关联相较于依赖而言关系更强,一般是长期的,关联不像依赖是单方面的调用,关联可以是双向的。比方说,
类型 | 关系 | 方向 |
---|---|---|
关联 | 强 | 双向/单向 |
依赖 | 弱 | 单向 |
如果觉得我的文章不错的话,可以关注一下我的微信公众号 搜索“ Fenmu”,或者扫一扫下面的二维码