繁体   English   中英

为什么我们不能扩展泛型?

[英]Why can't we extend a generic type?

我们有以下代码:

class MyClass<T>{
...
}
class MyExtendedClass extends MyClass<T>{//Compile error
...
}

我试图创建非通用类,它是通用类的子类型。 为什么禁止它?

您应该在那里放置一个具体的类:

class MyExtendedClass extends MyClass<String>

或将通用类添加到您的子类中

class MyExtendedClass<T> extends MyClass<T>

现在使用它的方式,当声明MyExtendedClass的实例时,您期望的T类型是什么:

MyExtendedClass x = new MyExtendedClass();

在这种情况下,没有办法说出T应该是多少!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM