亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

java如何根據方法名獲取方法

小億
173
2023-10-28 02:56:47
欄目: 編程語言

在Java中,可以通過反射來根據方法名獲取方法。具體步驟如下:

  1. 使用Class.forName()方法加載對應的類,獲取類的Class對象。例如,要獲取com.example.MyClass類的方法,可以使用Class.forName("com.example.MyClass")來獲取該類的Class對象。

  2. 使用Class對象的getMethods()方法獲取該類的所有公共方法,或者使用getDeclaredMethods()方法獲取該類的所有方法(包括私有方法)。

  3. 遍歷方法數組,使用getName()方法獲取每個方法的方法名,與目標方法名進行比較。

  4. 找到目標方法后,可以使用Method對象的其他方法執行該方法。

以下是一個示例代碼:

import java.lang.reflect.Method;

public class Main {
    public static void main(String[] args) throws NoSuchMethodException {
        try {
            // 加載類,獲取Class對象
            Class<?> clazz = Class.forName("com.example.MyClass");

            // 獲取所有公共方法
            Method[] methods = clazz.getMethods();

            // 遍歷方法數組
            for (Method method : methods) {
                // 獲取方法名
                String methodName = method.getName();

                // 判斷方法名是否與目標方法名相同
                if (methodName.equals("myMethod")) {
                    // 執行目標方法
                    method.invoke(null); // 如果方法是靜態方法,則傳入null作為對象,非靜態方法則傳入實例對象
                    break;
                }
            }
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
}

class MyClass {
    public static void myMethod() {
        System.out.println("Hello, world!");
    }
}

在上面的示例中,我們通過反射獲取了MyClass類的方法,并找到了名為myMethod的方法,并執行了該方法。

0
建平县| 彩票| 南京市| 米泉市| 肥城市| 资阳市| 玛沁县| 六枝特区| 甘洛县| 昌邑市| 新化县| 丰顺县| 兴国县| 阜南县| 辉南县| 富川| 东平县| 体育| 江津市| 阳西县| 九龙城区| 攀枝花市| 固镇县| 邻水| 广安市| 永清县| 桐柏县| 广平县| 威海市| 海南省| 会理县| 崇州市| 广东省| 遂昌县| 依安县| 万荣县| 灵丘县| 吴忠市| 井研县| 利津县| 廊坊市|