天天看点

java之用反射实现方法(已知实体对象和实体参数)

1、问题

有个函数需要在Android 23(6.0)以上,但是我们的API是22,所以这个实体对象调用不了这个函数,这个时候我们应该想到的是反射,切记。

2、实现

同时看我写得很着急,因为我是先class.forName("***"),然后再去getMethod("**"),然后method.invoke("**");

我们可以快速这样写

Method m = 实体对象的类名.class.getDeclearedMethod("methodName", 实体参数类名.class, boolean.class, int.class);

m.invoke(实体对象,  实体参数, false);

3、总结

如果这个类的实体对象调用不到这个函数,但是实际上又有这个函数,我们要用反射,反正就是一句话,函数调用不到的时候记得用反射。

继续阅读