我有如下通用名称:
interface Intf1<T> {
void method1(T t);
}
和实现:
class Class1 implements Intf1<ClassT> {
@Timed
@Metered
void method1(ClassT theParam) {
// do something with theParam
}
}
现在,由于上述method1为@Timed,因此我获得了使用相同方法名称创建的代理类。但是参数类型是java.lang.Object而不是ClassT。
我知道这与泛型有关。有人可以解释为什么Proxy类在这里将java.lang.Object作为method1的参数类型吗?