有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何扩展节点类

我有一个抽象类,如下所示:

public abstract class Node<T extends Comparable<T>>

我需要extends Comparable<T>,以便我可以将.compareTo()与泛型类型T一起使用

我尝试使用以下子类声明扩展此类:

public class ListNode<T> extends Node<T extends Comparable<T>>

但是,对于第二个extends和最后两个>>,这会在eclipse中抛出语法错误

这是声明子类的方式吗?看起来很乱

public class ListNode<T extends Comparable<T>> extends Node<T extends Comparable<T>>

如何做到这一点?提前欢呼


共 (1) 个答案

  1. # 1 楼答案

    Node作为

    public abstract class Node<T extends Comparable<T>>{}
    

    ListNode可以是:

    public class ListNode<T extends Comparable<T>> extends Node<T>
    

    需要注意的关键点是,声明类名称后的type参数是约束T用于类中其他所有内容的参数。这包括声明的类扩展的其他类型

    这意味着一旦有了T边界,就不需要在extends/implements语句中再次执行