关联关系
即对象和对象之间的连接。关联关系的代码表现形式为一个类做为另一个类的属性类型存在。
如果两个互相关联的类中有整体和部分的关系,关联关系分为: 聚合和组合,主要区别在于生命周期不同。
依赖关系
指一个类A使用到了另一个类B
这种关系是具有偶然性的、临时性的、非常弱的,但是类B的变化会影响到类A。
依赖与关联的区别
关联是“HAS”关系,依赖是“USE”关系
A类关联B类,指的是B类对象作为A类的属性存在,称为“has”关系。
A类依赖B类,指的是B的对象作为A类的方法参数存在,称为“use”关系。
生命周期不同
如果A类关联B类,那么创建A类的对象时实例化B类的对象,直到A类对象被销毁,所关联的B类对象也被销毁。即只要A类对象存在,B类对象就存在。
如果A类依赖B类,那么只有当A类对象调用到相应方法时,B类对象才被临时创建,方法执行结束,B类对象即被回收,A类和B类之间的依赖关系是一种瞬时的关系。
原文:http://www.cnblogs.com/loyer/p/7092124.html