如何在不扩展的情况下使用另一个类中的类的方法

Loo*_*oii 2 java methods inheritance class extend

对不起,如果我的问题听起来很奇怪,我会试着解释一下.我有4个班:Karakter,Karakters,Orc,Human.兽人和人类都延伸了卡拉克特.Karakters是一个带有Karakter的ArrayList.

我在Orc和Human中都有一个方法叫做:public String getRace().现在我想在Karakters中使用这种方法?!! 当我尝试这样做时,它失败了,因为Orc和Human扩展了Karakter而不是Karakters!有没有办法做到这一点?我听到了一些关于制作抽象的东西:P

谢谢

Mic*_*ers 5

声明getRace()方法Karakter(注意英文拼写是"字符",但这既不在这里也不在那里).

由于Karakters只知道它正在处理类型的对象Karakter,因此无法知道两个实现都有getRace方法.在基类中声明方法可以解决此问题.

它应该如下所示:

public abstract String getRace();
Run Code Online (Sandbox Code Playgroud)

而且Karakter类也必须进行abstract.