Java编译器如何为较低边界的通配符执行类型擦除?

在使用generics类型编译源代码时,Java编译器会自动执行类型擦除,用适当的原始类型替换generics声明。

根据Oracle文档,这个擦除取代了上面的绑定通配符 使用T 。这非常适合动态多态。

但是对于有界较小的通配符如何执行此擦除 看到每个类都有一个共同的超类(Object),使用它会破坏整个目的吗?

对于超类型,它将擦除为对象类型。 仅用于编译时validation