gpt4 book ai didi

使用泛型实现接口(interface)的 Java 抽象类

转载 作者:IT老高 更新时间:2023-10-28 13:53:16 45 4
gpt4 key购买 nike

我正在尝试定义一个实现 Comparable 的抽象类。当我使用以下定义定义类时:

public abstract class MyClass implements Comparable <MyClass>

子类必须实现compareTo(MyClass object)。相反,我希望每个子类都实现 compareTo(SubClass object),接受自己类型的对象。当我尝试使用以下内容定义抽象类时:

public abstract class MyClass implements Comparable <? extends MyClass>

它提示“父类(super class)型不能指定任何通配符。”

有解决办法吗?

最佳答案

在我看来这有点太冗长了,但是很有效:

public abstract class MyClass<T extends MyClass<T>> implements Comparable<T> {

}

public class SubClass extends MyClass<SubClass> {

@Override
public int compareTo(SubClass o) {
// TODO Auto-generated method stub
return 0;
}

}

关于使用泛型实现接口(interface)的 Java 抽象类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3592939/

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