首頁  >  文章  >  Java  >  如何使用 Java 反射呼叫方法?

如何使用 Java 反射呼叫方法?

WBOY
WBOY轉載
2023-04-24 14:22:072010瀏覽

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

只能取得類別中pub​​lic權限的建構方法

public Constructor getDeclaredConstructor(Class<?>… parameterTypes)

可以取得類別中全部建構方法,包含私有建構。

3、呼叫類別中指定名稱的普通方法

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

以上是如何使用 Java 反射呼叫方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除