[标题]:对Class.getMethod()的调用未经检查
[时间]:2009-4-5
[摘要]:警告:[unchecked]对作为普通类型 java.lang.Class 的成员的 getMethod(java.lang.String,java.lang.Class <?>...) 的调用未经检查.
[关键字]:Class,getMethod,unchecked,反射,reflection,范型
[环境]:JDK6
[作者]:Winty (wintys@gmail.com)
[错误]:
Class myClass = MethodPointerTest.class;
Method add = myClass.getMethod("add" , int.class , int.class );
上述代码出现如下警告:
警告:[unchecked]对作为普通类型 java.lang.Class 的成员的 getMethod(java.lang.String,java.lang.Class <?>...) 的调用未经检查.
[解决]:
是范型在作怪。Class修改为Class<?>:
Class<?> myClass = MethodPointerTest.class;
Method add = myClass.getMethod("add" , int.class , int.class );