Java类扩展

时间:2016-04-10 17:29:34

标签: java inheritance

我有3个叫做

的课程
  • 学生(有namegradestudent number
  • 硕士生(与学生相同的字段也有thesistopic
  • 博士生(与硕士生课程相同的字段也有scolarship金额)

博士生和硕士生彼此不同。
但是博士生课程里有硕士生的一切。

哪一个是真的

  • 这些课程是否将学生分开?
  • MasterStudent扩展Student和PhdStudent扩展MasterStudent?

2 个答案:

答案 0 :(得分:0)

根据我的理解,这两种说法都是正确的。由于学生是最低级别,所以上述任何内容都可以扩展学生。硕士生是中级,博士是最高的。因此,硕士学生将扩展学生,博士学位将扩展硕士学位,这是学生的延伸。重申一下,它并不重要。

答案 1 :(得分:0)

在继承的情况下,经验法则是你只在它有用时使用它。

对于MAster:PHD我没有看到一种方法,可能/可能有不同的实现(或将来可能有这种方法)足够的理由限制自己继承。

我会选择单独继承学生,以便为将来的扩展保留最大的灵活性。