PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

如何使用 Java 反射调用方法?

WBOY
WBOY 转载
2023-04-24 14:22:07 1641浏览

1、调用静态方法

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

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

2、调用类中构造方法

取得类中指定参数类型的构造

public Constructor getConstructor(Class<?>… parameterTypes) throws NoSuchMethodException, SecurityException

只能取得类中public权限的构造方法

public Constructor getDeclaredConstructor(Class<?>… parameterTypes)

可以取得类中全部构造方法,包含私有构造。

3、调用类中指定名称的普通方法

public Method getMethod(String name, Class<?>… parameterTypes)
//方法有重载所以要传名称和参数类型取得本类以及父类中所有public方法
public Method getDeclaredMethod(String name, Class<?..parameterTypes)
取得本类中全部普通方法,包括私有方法。

以上就是如何使用 Java 反射调用方法?的详细内容,更多请关注php中文网其它相关文章!

声明:本文转载于:亿速云,如有侵犯,请联系admin@php.cn删除