什么是关联和依赖,他们的区别 在哪里??
这是我的总结,希望大家给于指正:
依赖
可以简单的理解,就是一个类A使用到了另一个类B,而这种使用关系是具有偶然性的、、临时性的、非常弱的,但是B类的变化会影响到A;比如某人要过河,需要借用一条船,此时人与船之间的关系就是依赖;表现在代码层面,为类B作为参数被类A在某个method方法中使用; 关联类似于组合或者包含,暂时无法确切确定两者是否为一个概念。包含是组合的另一种说法,就是一个类的成员变量是另一个类的数据成员。
关联
他体现的是两个类、或者类与接口之间语义级别的一种强依赖关系,比如我和我的朋友;这种关系比依赖更强、不存在依赖关系的偶然性、关系也不是临时性的,一般是长期性的,而且双方的关系一般是平等的、关联可以是单向、双向的;表现在代码层面,为被关联类B以类属性的形式出现在关联类A中,也可能是关联类A引用了一个类型为被关联类B的全局变量;关联与继承类似,与上例一致,也暂时无法确定两者是否所指同一概念。
Class A{
public B objectb;
}A 与B是依赖关系
_________________________________________________________________
Class B{
}
Class A extends B{
}
A与B是关联关系。