区别java依赖与关联
Posted yunjingx
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了区别java依赖与关联相关的知识,希望对你有一定的参考价值。
依赖关系是一种“使用”关系,如果A 类的某个方法的参数是B 类对象,那么就可以说A 类依赖B 类。如下代码所示:
package com.etc.chapter09;
public class A {
public void f(B b){
}
}
class B{
}
上述代码中,A 类方法f 的形式参数类型是B 类类型,也就是说A 类对象如果要使用方法f,那么必须需要一个B 类的对象作为参数方可实现,这种情形被称为A 依赖B。
关联关系是面向对象程序设计中常用的“复用”策略,依赖关系相对于关联关系是一种“简单”的关系。
1.关联是“HAS”关系,依赖是“USE”关系
A 类关联B 类,指的是B 类对象作为A 类的属性存在,称为“HAS”关系。A 类依赖B类,指的是B 类对象作为A 类的方法参数存在,称为“USE”关系。
2.生命周期不同
如果 A 类关联B 类,那么创建A 类的对象时就会实例化B 类的对象,直到A 类对象被销毁,所关联的B 类对象才被销毁。即只要A 类对象存在,B 类对象就存在。而如果A 类依赖B 类,那么只有当A 类对象调用到相应方法时,B 类对象才被临时创建,方法执行结束,B 类对象即被回收,A 类和B 类之间的依赖关系是一种瞬时关系。
以上是关于区别java依赖与关联的主要内容,如果未能解决你的问题,请参考以下文章