加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

依赖,关联

发布时间:2020-12-13 22:13:53 所属栏目:百科 来源:网络整理
导读:组合,聚合,关联,依赖 的区别 依赖(Dependency) 定义: 是类与类之间的连接,表示一个类依赖于另外一个类的定义;依赖关系仅仅描述了类与类之间的一种使用与被使用的关系; 代码示例: public class A{ public void mehtod (B b) { b.writer(); } } A这个类

组合,聚合,关联,依赖 的区别

依赖(Dependency)

定义:

是类与类之间的连接,表示一个类依赖于另外一个类的定义;依赖关系仅仅描述了类与类之间的一种使用与被使用的关系;

代码示例:

public class A{
        public void mehtod(B b)
          {
             b.writer();
          }
     }

A这个类方法method的使用依赖于B,没有B method这个方法无法实现。即A中method这个方法使用到了B。

简而言之:若A的目标要完成某一操作,有必要运用B的目标的某些操作来帮助,才能完成。B是作为A的某个方法的参数存在。

依赖是两个类,使用与被使用的关系

关联(Association)

含义:

类与类之间的连结,关联关系使一个类知道另外一个类的属性和方法;通常含有“知道”,“了解”的含义。关联可以是双向的,也可以是单向的

代码:

public class A{
   private B b;
   public B getB()
   {
     return b;
   }
   public void setB(B b)
   {
     this.b=b;
   }
   public void mehtod()
   {
    b.writer();
   }
}

有代码可知:
B是作为A的特点,属性存在。
依赖和关联的区别在于依赖是使用,关联是拥有。

  1. 关联表明has-a联系,如学生有一个课程,往往表明B作为A的特点存在
  2. 依赖表名要做一件工作,离不开某个目标,往往表明B作为A的方法参数存在

看一下下边的代码可以进一步加深了解。

public class Student{
    private String name;
    private Course course;//Student关联Course
    private Student(String name){
        super();
        this.name=name;
    }
    //依赖关系:Student依赖Course
    public void chooseCourse(Course course){
        this.course=course;
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读