日韩精品欧美激情国产一区_中文无码精品一区二区三区在线_岛国毛片AV在线无码不卡_亞洲歐美日韓精品在線_使劲操好爽好粗视频在线播放_日韩一区欧美二区_八戒八戒网影院在线观看神马_亚洲怡红院在线色网_av无码不卡亚洲电影_国产麻豆媒体MDX

Java Method的invoke實(shí)現(xiàn)動態(tài)調(diào)用

時間:2021-05-14 16:25:49 類型:JAVA
字號:    

通過JAVA 中反射機(jī)制及Method的invoke實(shí)現(xiàn)動態(tài)類方法的動態(tài)調(diào)用

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

public class MethodInvokeTest {
    public static void main(String[] args) throws NoSuchMethodException, IllegalAccessException, InstantiationException, InvocationTargetException {
        String [] methods ={"pig","chicken","cat","dog"};
        Class animal = Animal.class; //得到Animal類對象, 注意類本身也是一個對象
        for(String m:methods){
                Method method = animal.getMethod(m);//獲得animal對象所聲明的公開方法 m 給method
                method.invoke(animal.newInstance()); //執(zhí)行animal對象的method方法
        }
    }
}

class Animal{
    public void dog(){
        System.out.println("可愛的小狗");
    }
    public void cat(){
        System.out.println("漂亮的小貓");
    }
    public void pig(){
        System.out.println("憨憨的小豬");
    }
    public void chicken(){
        System.out.println("嘎嘎嘎的小雞");
    }
}

執(zhí)行結(jié)果如下:

憨憨的小豬

嘎嘎嘎的小雞

漂亮的小貓

可愛的小狗


<