获取具有有界类型参数的接口的具体实现的参数化类型。 Java的

时间:2012-07-13 05:58:45

标签: java generics reflection

  

可能重复:
  Java reflection: Get concrete type of implemented generic interface

说我有一个界面:

public interface Monitor<T extends com.google.protobuf.Message>{
      public void checkMessage(T message)
}

和具体实施:

public class MyMonitor implements Monitor<GeneratedMessage>{
      @Override
      public void checkMessage(GeneratedMessage message){
         //do something
      }
}

我想编写一个实用程序方法,我可以将MyMonitor传递给它将返回GeneratedMessage.class。有没有办法做到这一点?我见过几个与此相关的博客,但大多数都与扩展类有关。

此外,如果可能,我是否可以声明Monitor<GeneratedMessage> monitor = new MyMonitor();并将监视器传递给相同的方法,并返回GeneratedMessage?

0 个答案:

没有答案