2024年6月6日发(作者:)

java 反射获取method

在Java中,可以使用反射来获取Method对象,从而可以通过Method对象

来调用指定的方法。首先,需要使用Class对象来表示要获取方法的类。然后,

可以使用以下方法来获取Method对象:1. getMethod(String name,

Class... parameterTypes):根据方法名和参数类型获取指定的公共方法(包

括继承的方法)。2. getDeclaredMethod(String name, Class...

parameterTypes):根据方法名和参数类型获取指定的方法(不包括继承的方法)。

这两个方法都需要传入方法名和参数类型,可以通过Class对象的getMethod()、

getDeclaredMethod()方法来获取指定的Method对象。例如,以下代码展示

了如何使用反射获取Method对象并调用方法:java 获取Class对象Class

clazz = ;try { 获取指定的方法 Method method =

hod("methodName", , ); 调用方

法(示例为静态方法) (null, "hello", 123);} catch

(NoSuchMethodException IllegalAccessException

InvocationTargetException e) { tackTrace();}在上面的示例中,首

先获取了YourClass类的Class对象。然后,使用getMethod()方法获取了名

为methodName,并且接受一个String类型和一个int类型参数的公共方法。

最后,使用invoke()方法来调用该方法,第一个参数为null表示调用的是静态

方法,之后的参数为实际传入的参数。需要注意的是,通过反射调用方法可能会

引发各种异常,例如NoSuchMethodException(方法未找到)、

IllegalAccessException(无法访问方法)、InvocationTargetException(被调

用方法内部抛出异常)。因此,需要对这些异常进行处理。