黑马程序员技术交流社区
标题: 对象与对象之间的关系. [打印本页]
作者: hugin 时间: 2016-9-26 09:17
标题: 对象与对象之间的关系.
组合关系
依赖关系
关联关系
继承关系
1. 组合关系.
1个对象是由多个对象组合起来的.
比如.计算机对象. 是由主板对象、CPU对象、内存对象、硬盘对象...组合起来的.
主板、内存、硬盘作为计算机对象的属性.
那么这个时候,计算机对象和主板、内存、硬盘的关系为 组合关系.
2. 依赖关系
1个对象的方法的参数是另外1个对象.那么我们就说他们的关系是依赖关系.
比如,B类是A类方法的参数,我们就说A类依赖于B类.
美女打电话的例子.
人类:
callWithPhone:(Phone *)phone;
我们就说人类依赖于电话类. 人要打电话 就必须要有电话对象.
电话类:
耦合度: 当修改1个对象的时候 对另外1个对象的影响程度.
1个类修改了 另外1个类就玩完.
低耦合: 当修改1个对象的时候 对另外1个对象的影响较小甚至没有影响.
高内聚: 1个对象仅仅做自己相关的事情.
单一职责原则. 1个类只做自己的事情.别人的事情给别人做.
eatShit;
3. 关联关系
关联体现的是两个类之间语义级别的一种强依赖关系,
比如我和我的朋友,这种关系比依赖更强、不存在依赖关系的偶然性、关系也不是临时性的,一般是长期性 的,
而且双方的关系一般是平等的。关联可以是单向、双向的。
表现在代码层面,
为被关联类B以类的属性形式出现在关联类A中,也可能是关联类A引用了一个类 型为被关联类B的全局变量。
案例:人使用iPad听歌.
-------------
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |