亚洲色蝴蝶中文娱乐网,在线亚洲欧美一区二区中文字幕,无人视频在线观看视频高清视频,99午夜国产精品一区二区,人人妻人人爽人人狠狠

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

時(shí)間:2021-05-14 16:25:49 類型:JAVA
字號(hào):    

通過(guò)JAVA 中反射機(jī)制及Method的invoke實(shí)現(xiàn)動(dòng)態(tài)類方法的動(dòng)態(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類對(duì)象, 注意類本身也是一個(gè)對(duì)象
        for(String m:methods){
                Method method = animal.getMethod(m);//獲得animal對(duì)象所聲明的公開(kāi)方法 m 給method
                method.invoke(animal.newInstance()); //執(zhí)行animal對(duì)象的method方法
        }
    }
}

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

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

憨憨的小豬

嘎嘎嘎的小雞

漂亮的小貓

可愛(ài)的小狗


<