gpt4 book ai didi

java - 在方法覆盖中使用子类型作为参数

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:45:37 24 4
gpt4 key购买 nike

public abstract class SequenceItemHolder {

public SequenceItemHolder(View itemView) {
}

public abstract void setData(SequenceRowElement.RowElement rowElement);


public static class TesteItemHolder extends SequenceItemHolder {

public TesteItemHolder(View itemView) {
}

@Override
public void setData(SequenceRowElement.TestRowElement rowElement) {
}
}
}

有人能解释一下为什么我在重写中会遇到编译错误吗?

请问如何修复它(不使用界面)?


注意:TestRowElement 扩展 RowElement

最佳答案

错误 1

public SequenceItemHolder(View itemView) {
super(itemView);
}

对象没有将 View 作为参数的构造函数。删除 super 调用。

错误 2

public abstract void setData(SequenceRowElement.RowElement rowElement) {}

抽象方法不应该有主体。将其替换为:

public abstract void setData(SequenceRowElement.RowElement rowElement);

错误 3

您的重写方法应具有与抽象方法相同的参数类型。

关于java - 在方法覆盖中使用子类型作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34918061/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com