大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java反射invoke方法詳解

Java反射invoke方法詳解

更新時間:2022-12-06 11:42:41 來源:動力節點 瀏覽1878次

Java反射invoke方法是什么?首先我們來了解一下什么是Java中的反射。

反射就是將類別的各個組成部分進行剖析,可以得到每個組成部分,就可以對每一部分進行操作

Java反射機制應用場景:逆向代碼、動態生成類框架等,使用反射機制能夠大大的增強程序的擴展性。

反射的基本步驟:首先獲得Class對象,然后實例化對象,獲得類的屬性、方法或者構造函數,最后訪問屬性、調用方法、調用構造函數創建對象。而invoke()方法就是用來執行指定對象的方法。

在比較復雜的程序或框架中來使用反射技術,可以簡化代碼提高程序的復用性。

講的是Method類的invoke()方法。

既然是講invoke方法,那就不講怎么使用反射了,代碼上來先:

package online;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method; 
import org.junit.Test; 
public class Msym {     
    public void test(String[] arg){
        for (String string : arg) {
            System.out.println(string);
        }
    }
    @Test
    public void demo1() throws Exception {
        //獲取字節碼對象
        Class<Msym> clazz = (Class<Msym>) Class.forName("online.Msym");
        //獲取一個對象
        Constructor con =  clazz.getConstructor();
        Msym m = (Msym) con.newInstance();
        String[] s = new String[]{"aa","bb"};
        //獲取Method對象
        Method method = clazz.getMethod("test", String[].class);
        //調用invoke方法來調用
        method.invoke(m, s);
    }
}

測試會報錯:

讓我們來看一下invoke方法:

invoke方法的參數,一個是Object類型,也就是調用該方法的對象,

第二個參數是一個可變參數類型,這個可變參數類型怎么能傳遞給一個數組類型呢?一個是多個參數。一個是一個數組參數,顯然參數的個數不匹配,怎么解決呢?

解決辦法就是將可變參數變成一個參數:

將傳遞進去的s強轉為Object類型

將s重新包裝成一個Object數組

測試一下:

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 久久资源总站 | 亚洲欧美激情精品一区二区 | 久久91视频 | 亚洲成人免费在线视频 | 五月婷婷在线播放 | 伊人久久伊人 | 欧美αv| 在线观看欧美国产 | 欧美一级中文字幕 | 国产香蕉国产精品偷在线观看 | 久久尹人香蕉国产免费天天 | 欧美亚洲国产精品久久 | 国产nv精品你懂得 | 国产精品66| 日产精品久久久一区二区 | 中文字幕第一页亚洲 | 亚洲精品一区二区三区中文字幕 | 成人a视频高清在线观看 | 天天干夜夜草 | 精品国产三级 | 99爱在线视频 | bt 另类 专区 欧美 制服 | 日本一级在线播放线观看视频 | 男人午夜免费视频 | 久久99国产精品 | 日本高清一道本 | 综合网婷婷 | 久久久久久久影院 | xx另类性欧美 | 久久久成人啪啪免费网站 | 欧美一区二区久久精品 | 草久在线 | 国内精品久久久久久影院老狼 | 337p亚洲精品色噜噜狠狠 | 国产在线视频h | 欧美黑人喷潮水xxxx | 亚洲狠狠婷婷综合久久久久 | 性大特级毛片视频 | 日日私人影院 | 视频二区 中文字幕 欧美 | 欧美一级片在线视频 |