我如何实现" include"在Java类协会

时间:2016-11-30 19:48:35

标签: java uml

我理解继承在Java类关联中做什么,这是扩展功能。但我不知道包含哪些方法,我已经研究过,只能找到工具,但不确定这是什么包括手段。

这是UML设计。

StudentRecord(1)----包括----(1)学生      FullTimeStudent(1)----继承----> (1)学生

1 个答案:

答案 0 :(得分:3)

技术上,区别在于:

第一个:StudentRecord(1)----包括----(1)学生 这意味着StudentRecord包含一个类型为Student的成员变量,类似于

public class StudentRecord {
    private Student student;
    // and other member variables and functions
}

第二:FullTimeStudent(1)----继承----> (1)学生 这意味着FullTimeStudent是一名学生。像:

public class FullTimeStudent extends Student {
    // override stuff, add new members
}

看到区别?一个说"包含" ,而另一个"是" 。 即你可以这样写:

Student s = new FullTimeStudent();

StudentRecord sr = new StudentRecord(student);
// given you have such a constructor, or:
studentRecord.setStudent(s);