我只是偶然发现我以前没有尝过的情况。 我有这个:
class A<DATA>
class B extends A<SomeSpecificDataClass>
现在,我想声明第三个类:
class C <T extends A<DATA>{
public someMethod(T instance, DATA data){}
}
我知道我可以向实例询问其数据,但对于我正在构建的API,我真的更喜欢这样的语法。任何想法怎么做?
提前致谢。
答案 0 :(得分:2)
由于DATA
将是另一个泛型,因此您应该声明该类使用两个泛型:
class C<DATA, T> {
}
然后,您可以根据T
定义DATA
的其他要求:
class C<DATA, T extends A<DATA>> {
}