如何在不引用特定类型参数的情况下如下定义List字段:
private final List<? extends A<B, ?[0] extends C, ?[1] extends D<B, ?[0]>>> list = new ArrayList<>();
其中:
答案 0 :(得分:0)
我最接近的是:
abstract class ClassA<B, C, F extends C, G extends ClassD<B, F>> {}
abstract class ClassC{}
class SubtypeC extends ClassC{}
abstract class ClassD<X, Y>{}
class SubtypeD extends ClassD<String, SubtypeC>{}
class Main{
private final List<? extends A<String, ClassC, SubtypeC, SubtypeD>> list = new ArrayList<>();
}
我不知道有可能使用类型参数定义泛型类型(类似class ClassA<D<B, F>>
- 这里的D需要是一个类)。