可能重复:
Java反射:获取实现的通用接口的具体类型
假设我有一个界面:
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 吗?