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

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

Java反射invoke方法詳解

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

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數組

測試一下:

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 成人在线免费视频播放 | 色婷婷久久久swag精品 | 国产精品青草久久久久婷婷 | 国产成人精品午夜免费 | 麻豆久久婷婷国产综合五月 | 2021久久精品99精品久久 | 欧美国产日韩精品 | 亚洲精品www久久久久久久软件 | 不卡视频在线播放 | 亚洲一区高清 | 亚洲国产精品乱码一区二区三区 | 亚洲性大片 | 精品影视| 亚洲 欧美 另类 天天更新影院 | 亚洲大片在线观看 | 欧美一级在线免费观看 | 三a大片| 成人午夜久久精品 | 久久久精品国产四虎影视 | 羞羞网页 | 奇米第四色影视 | 2020亚洲欧美日韩在线观看 | 九九国产在线视频 | 在线一区国产 | 日韩久久精品一区二区三区 | 国产香蕉在线精彩视频 | 四虎在线永久免费视频网站 | 天天夜天干天天爽 | 四虎4hutv永久在线影院 | 天天色综合三 | 亚洲国产福利精品一区二区 | 欧美在线视频a | 国产第一页福利 | vvideos欧美极度另类 | 一本色道久久综合亚洲精品高清 | 三级大黄| 成人性a激情免费视频 | 久久久久久国产精品免费 | 四虎影视在线永久免费看黄 | 国产香蕉视频在线 | 国产精品视频公开费视频 |