我想让一个类在这样的几个类中扩展另一个类:
class Special extends < Class1<type1> , Class2<Type2>> {
// ToDo
}
我尝试过类似的事情:
class Special<T1, T2, T3, T4> extends < T1<T2> , T3<T4>> {
// ToDo
}
当然语法不能编译。我怎么能这样做?
编辑1
我们在这里要清楚:我不想要多重继承。我希望我的课程能够扩展一个超级课程,而另一个超级课程。为此,我问是否有可能使用泛型。
可以使用泛型来处理这个特殊的数组映射:
class MapArray<T_KEY, T_VALUE> extends LinkedHashMap<T_KEY, ArrayList<T_VALUE>> {
}
此代码可以让用户为T_KEY和T_VALUE添加任何类型。 我想知道是否可以在类中使用泛型。
更简单地说,我想这样做:
class Special extends < Either_this_class, Either_this_one > {
}
答案 0 :(得分:0)
你可以这样做(保持Java语法的极限):
class SubAndImp extends Super implements Interface {
}
或
class ImpAndImp implements InterOne, InterTwo {
}
所有或部分扩展和实现的类型都可以是通用的:
class SubAndImp<X,Y> extends Super<X> implements Interface<Y> {
}
或
class ImpAndImp<X,Y> implements InterOne<X>, InterTwo<Y> {
}
通过实例化一个通用参数,你的子类也可以不再是通用的:
class SubAndImp extends Super<Integer> implements Interface<String> {
}
答案 1 :(得分:0)
Java仅支持多个接口继承。所以你不能扩展多个类,但你可以实现任意数量的接口。