编程语言
首页 > 编程语言> > java-使用它.或超级.调用存在于父类和子类中的方法时

java-使用它.或超级.调用存在于父类和子类中的方法时

作者:互联网

有一个称为Champion的类,该类具有一系列Skill作为实例变量.

它实现了一种称为“公共最终Skill [] getSkills()”的方法,其中Skill []是另一个名为Skill的对象的数组.

有一个名为Support的子类,该子类实现一种称为“ public final boolean canHeal()”的方法,该方法检查canHeal方法中的技能数组.

我应该写“ Skill [] x = this.getSkills()”还是:Skill [] x = super.getSkills()“以获取Skill数组,为什么?

请记住,方法getSkills仅在Champion类中定义,而不在Support类中被覆盖.

提前致谢.

解决方法:

通过super关键字,您可以调用类覆盖或隐藏的方法的基类版本.

如果您的课程没有单独的getSkills()方法,则super将无效.

标签:oop,inheritance,reference,this,java
来源: https://codeday.me/bug/20191031/1973744.html