Реализация прокси для универсального класса @Timed имеет параметр метода как java.lang.Object вместо шаблона - PullRequest
0 голосов
/ 25 декабря 2018

У меня есть общий шаблон, как показано ниже:

interface Intf1<T> {
  void method1(T t);
}

и реализация:

class Class1 implements Intf1<ClassT> {

  @Timed
  @Metered
  void method1(ClassT theParam) {
     // do something with theParam
  }

}

Теперь, так как вышеупомянутый метод1 равен @Timed, я получаю прокси-класс, созданный с помощью того же методаназвание.Но тип параметра - java.lang.Object вместо ClassT.

Я знаю, что это как-то связано с тем, что он является универсальным.Может кто-нибудь объяснить, почему класс Proxy принимает java.lang.Object в качестве типа параметра для method1 здесь?

...