关联关系和依赖关系

关联:一种结构关系,表现为一个对象能够获得另一个对象的是类引用并调用他的服务。关联(Association)表示两个类之间存在某种语义上的联系。例如,一个人为一家公司工作,一家公司有许多办公室。我们就认为人和公司、公司和办公室之间存在某种语义上的联系。在分析设计的类图模型中,则在对应人类和公司类、公司类和办公室类之间建立关联关系。


依赖:一种使用关系,表现为一个对象仅仅是调用了另一个对象的服务。有两个元素X、Y,如果修改元素X的定义可能会引起对另一个元素Y的定义的修改,则称元素Y依赖(Dependency)于元素X。在类中,依赖由各种原因引起,如:一个类向另一个发消息一个类是另一个类的数据成员;一个类是另一个类的某个操作参数。如果一个类的界面改变,它发出的任何消息可能不再合法。

下面是本人的理解:

A 和 B是关联关系,A关联B

关联是一种结构关系,A它原则上不使用(调用)B,它只负责维护B,也就是创建B对象和清理B对象,它不使用B对象的属性方法。当B做修改时应该不会影响到A。因为A只是负责管理B,不对它做任何操作。

A 和 B是依赖关系,A依赖B依赖是一种使用关系,在A中会访问B的成员或者方法,所以当B做修改时可能会影响到A。

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...