我的 Java 代码有问题。我有四个(重要的)课程:
public class RDOutput extends OutputType
public class RDAnalysis extends AnalysisProperties
现在我正在尝试在分析属性中创建一个方法:
public abstract void display(ArrayList<? extends OutputType> results);
主要问题列表,ArrayList中的对象会是OutputType的不同子类型。在我的课程 RDAnalysis 中,我尝试进行特定的覆盖:
public void display(ArrayList<RDOutput> results) {
但 Eclipse 说:名称冲突:RDAnalysis 类型的方法 display(ArrayList) 与 AnalysisProperties 类型的 display(ArrayList? extends OutputType) 具有相同的擦除,但不会覆盖它
我不熟悉 Java 技巧,我尝试在文档中搜索,但没有找到任何解决此问题的方法。我的问题是:我正在做的那个技巧(抽象中的基本类型和最终函数中的扩展)在 Java 中是否可行(如果是,我该怎么做?)还是我必须做一些枚举来解决这个问题?