多个泛型类型类转换为简单泛型类

时间:2017-07-20 17:59:06

标签: java generics

我有一个类层次结构,它们具有遵循相同层次结构的行为类(引用其父类的类)。行为类中的引用是一个通用引用,以避免堆叠接口。

在这个类层次结构的中间,也会引入一个通用的数据Map,这会给我带来以下问题......

public static class A {}
public static class B<DataType> extends A {}

public static class C<ParentType extends A> {}
public static class D<DataType, ParentType extends B<DataType>> extends C<ParentType> {}

C<A> castDtoC() { return new D<Long, B<Long>>(); } // Doesn't compile
A    castBtoA() { return new B<Long>(); } // Works fine

我不明白为什么不能施展,有没有办法解决这个问题?

我知道我可以通过将行为类放入内部类来避免引用,但是每个文件我将有1000多行代码,并且我希望每次使用时都不必抛出引用这是儿童班。

0 个答案:

没有答案