java反射

1.使用Java反射API的一个重要好处是可以绕过Java语言中默认的访问控制权限。Constructor、Filed和Method都继承自java.lang.reflect.AccessibleObject,其中的setAccessible方法可以用于设置是否绕过默认的权限检查,否则,访问非public的方法或者字段将产生IllegalAccessException异常。

2.调用静态方法:

以往都是使用反射调用实例方法,那么反射如何调用静态方法呢?看下面的例子

 
Class<?> threadClazz = Class.forName("java.lang.Math");
 
Method method = threadClazz.getMethod("abs", long.class);
 
System.out.println(method.invoke(null, -10000l));

只需要将invoke方法的第一个参数设为null即可!

posted @ 2018-07-17 17:33  H_bolin  阅读(106)  评论(0编辑  收藏  举报