学习笔记 | JAVA的反射(三)

方法的反射

方法的名称和其参数列表才能唯一决定某个方法

Method 对象中有个 invoke( 对象,参数列表 )

A a = new A();

Method m =a.getMethod("方法名",new Class[]{int.class,"参数类型".class});//获取方法的的Method对象 参数列表使用数组或者挨个列出。

getDelcaredMethod("xxx",...);

方法的反射就是使用m,来调用方法。

m.invoke(a,new Object[]{xxx,xxx});

通过Class,Method来了解泛型的本质

JAVA中集合的泛型是防止错误输入的,只在编译阶段有效,绕过编译就无效了。

可以绕过编译,向一个泛型为String的list中放入int型。

Method m = c1.getMethod("add",Object.class);

m.invoke(list1,20);

你可能感兴趣的:(学习笔记 | JAVA的反射(三))