1,反射
定义:就是把方法名当做参数,动态的调用。
特点:反射是可入侵的,通过设置setAccessiable(true) 可以调用私有方法。 此外调用会有性能影响。
使用过程:要调用的目标类对象.class.getDeclaredMethod(方法名,参数类型),返回Method对象,Method.invoke(对象,参数值)方法,调用
import java.lang.reflect.Method;
public class 反射 {
public static void main(String[] args) throws Exception {
Method method = 反射测试.class.getDeclaredMethod("invoke", int.class);
method.setAccessible(true);
反射测试 obj = new 反射测试();
Object result = method.invoke(obj, 1);
System.out.println(result);
}
}
class 反射测试{
private String invoke(int a){
System.out.println(a);
return "ss";
}
}<