我正在做一个基于Set in Java的项目,我已经将一个现有的项目作为基础。我找到了以下代码,但无法理解它的含义,特别是AbstractClass扩展自身。任何帮助,将不胜感激。
由于
public abstract class AbstractClass<I extends AbstractClass<I, V>, V>
extends SomeOtherAbstractClass<I>
答案 0 :(得分:0)
不,班级不会扩展自己。在扩展此类的内容上参数化。
答案 1 :(得分:0)
public class V<T extends B> {
}
public class A {
}
public class B extends A {
}
public class C extends B {
}
在上面的示例中,V
并未扩展B
,但V
需要参数化,其类型扩展为B
。
即:
new V<B>()
和new V<C>()
有效new V<A>()
无效因此,在您的代码中,AbstractClass<I, V>
扩展SomeOtherAbstractClass<I>
,而I
必须扩展AbstractClass<I, V>
。