了解 Java 通用 Class 语法?

Understanding Java Generic Class syntax?

我正在做一个基于 Set in Java 的项目,我给了一个现有的项目作为基础。我找到了以下代码,但无法理解它的含义,尤其是 AbstractClass Extends 本身。任何帮助,将不胜感激。

谢谢

public abstract class AbstractClass<I extends AbstractClass<I, V>, V> 
                      extends SomeOtherAbstractClass<I>

不,class 不会自行扩展。它 参数化 扩展了这个 class。

public class V<T extends B> {

}

public class A {

}

public class B extends A {

}

public class C extends B {

}

在上面的示例中,V 没有扩展 B,但是 V 需要参数化,它是扩展 B.[=26= 的类型] 即:

  • new V<B>()new V<C>() 有效
  • new V<A>()无效

因此,在您的代码中,AbstractClass<I, V> 扩展了 SomeOtherAbstractClass<I>,并且 I 必须扩展 AbstractClass<I, V>.