ジェネリックオブジェクト(つまりT)をリストに追加するメソッドaddがあります。私はこのメソッドを単体テストしたい。ジェネリック型を受け入れるメソッドを反映しよう
public static <T> List<T> add(List<T> list, T t) {
if(list == null) return null;
if(t == null) return list;
List<T> outputList = new ArrayList<T>(list);
outputList.add(t); // append item into list
return outputList;
}
私はメソッドを取得してテストしようとしています。私は次のコードスニペットを書いて、私が知っている方法が正しいとは限りません。
Class myClass = Myclass.class;
Class<List<T>> clazz = (Class<List<T>>) Class.forName("java.util.ArrayList");
Method myObjectMethod = myClass.getMethod("add", ...) // i need to identify T's class
NoSuchMethodの例外がいくつか発生します。
この方法の特定に誰かが助けてくれますか?上記のコードを修正するための任意のポインタ?
ありがとうございます!
このメソッドをテストするには、なぜ興味がありますか? – darrengorman
私はカスタムEclipseでこのメソッドを公開しています。あなたが知っているかもしれませんが、Eclipseはリフレクションを使用して(クラスをイントロスペクトしてメソッドを提案する)、Eclipseに追加する前に、単体テストを行いたいと思っています。 –