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(被调
用方法内部抛出异常)。因此,需要对这些异常进行处理。


发布评论