ジェネリック クラスから呼び出されたメソッドによって返される型を理解する方法はありますか?
例があります:
Generified<Integer, Double> generified = new Generified<Integer, Double>();
Method method = generified.getClass().getMethod("getDoubleValue");
Class<?> returnType = ........
わかりました、クラスがあります:
public class Generified<T, Z> {
private T tValue;
private Z doubleValue;
private List<T> tValueList;
public Generified() {
}
public T gettValue() {
return tValue;
}
public void settValue(T tValue) {
this.tValue = tValue;
}
public Z getDoubleValue() {
return doubleValue;
}
public void setDoubleValue(Z doubleValue) {
this.doubleValue = doubleValue;
}
public List<T> gettValueList() {
return tValueList;
}
public void settValueList(List<T> tValueList) {
this.tValueList = tValueList;
}
}
アップデート:
私が求めている理由があります:
コレクションの単純な集計を実行できる lib を実行しようとしています。私が今持っているものがあります:github.README.md
しかし、生成されたクラスのメソッドからの戻り値の型には多くの問題があります。CGLIB でラップし、この戻り値クラスのすべてのメソッドにインターセプターを追加して、呼び出し階層の将来を知るには、実際の戻り値の型を知る必要があります。
しかし、多くのデバッグの後、私がやりたいことを行う方法があることがわかり、泣きたいです:)