我有
public class First<T> {}
public class Second<T extends SomeConcreteClass> extends First<T> {}
public class Third<T> extends Second<T> {} //Compile-time error
我遇到了编译时错误。
Type argument T is not with bounds of type-variable T.
当我构建一个
Third
时,我希望能够将泛型参数设置为SomeConcreteClass
(或其派生类),如果我提供的类型不是SomeConcreteClass
的继承层次结构的一部分,则会抛出运行时错误。我认为在
Second
的声明中指定应该向下传播,即它应该在Third
的声明(和任何实例化)中隐含。这个错误是什么意思?