反射的複習

2021-09-22 12:23:31 字數 992 閱讀 2866

反射

reflect

為什麼要用反射?

把物件的集合轉為二維陣列,其實是把物件轉為陣列

把任意型別的物件轉為其屬性的陣列

什麼是反射?

在程式執行時通過class類的物件獲取該物件所代表的類的資訊,以及操作。

獲取class的物件

1.直接使用類,使用類名。class無論哪種方式,拿到的都是同乙個物件

class c1 = user.class;

2.類所建立的物件getclass方法

class c2 = user.getclass();

3.最常用的,class的靜態方法

class c3 = class.forname(「全類名」);

4.反射中一些基本的使用方法

getfield("");//獲取單一的屬性(公有)

getfields();//獲取類中所有屬性(公有)

getdeclaredfields();//獲取類中所有屬性(包括私有)

getdeclaredfield("");//獲取類中私有屬性

getmethod("");//獲取類中共有方法

getmethods();//獲取類中所有公有方法

一些基本使用情況。

反射的作業比較

這兩種用法最大的區別就是,用反射可以直接獲取不同型別物件,然後給值。而單一的選定物件就很侷限,因為物件千千萬。

javase複習 反射

反射 當位元組碼檔案載入到記憶體時,會進行解剖建立乙個對應的class物件,把位元組碼檔案的資訊都儲存進去。通過class物件使用位元組碼物件設定物件屬性,呼叫物件方法的過程叫做反射!person p new person 110,狗娃 class clazz1 class.forname cn.i...

反射(複習總結)

反射 將類的各個組成部分封裝為其他物件,這就是反射機制 好處 1.可以在程式執行過程中,操作這些物件。2.可以解耦,提高程式的可擴充套件性。獲取class物件的方式 1.class.forname 全類名 將位元組碼檔案載入進記憶體,返回class物件 多用於配置檔案,將類名定義在配置檔案中。讀取檔...

C 複習反射

反射中常用方法 1 獲取物件型別 2 one one new one 3 type t one.gettype 45 動態載入 6 assembly a assembly.loadfile path 7 獲取所有公共類 8 type tys assembly.getexportedtypes 910...