你 是 能够从具有泛型类型参数的超类型继承。例如:
public class MyList<T> extends AbstractList<T>
(或者甚至给出参数范围):
public class MyStringList extends AbstractList<String>
您 无法
定义具有通配符超类型的类。这样的概念在Java中没有任何意义(我不认为它在抽象中具有很大的价值)。在您的
MonitoredDevice示例中,我什至不确定您在那里期望什么功能。
由于存在擦除,因此在Java工作方式的基本层面上根本不可能做到这一点。每个类都必须有一个超类-
什么是超类
MonitoredDevice?
MonitoredDevice对象上有哪些可用方法?您将无法在此类上调用任何继承的方法,因为编译器无法保证此类方法的存在,字节码也不能表示此类调用。
我怀疑使用动态代理可以更好地实现您要执行的操作。
编辑:好的,在阅读完全文之后,我可以看到这样的声明背后的动机是什么。但是在充分阅读本文之后,您还意识到Java目前不支持此功能。其根本原因是由于擦除;在当前的机制下,这种技术将永远不可能实现,并且本文详细介绍了阻止此功能起作用的原因。



