反射-通過反射獲取無參構造方法並使用
package cn.itcast_02;
import java.lang.reflect.Constructor;
import cn.itcast_01.Person;
/*
* 通過反射獲取構造方法並使用。
*/
public class ReflectDemo {
public static void main(String[] args) throws Exception {
// 獲取位元組碼檔案物件
Class c = Class.forName("cn.itcast_01.Person");//反射是不會讓你看到任何類的資訊的,cn.itcast_01.Person將來會做成配置檔案,不是寫死的,配置誰就執行誰
// 獲取構造方法
// public Constructor[] getConstructors():所有公共構造方法(有public修飾的構造方法)
// public Constructor[] getDeclaredConstructors():所有構造方法
Constructor[] cons = c.getDeclaredConstructors();
for (Constructor con : cons) {
System.out.println(con);
}
// 獲取單個構造方法
// public Constructor<T> getConstructor(Class<?>... parameterTypes)
// 參數列示的是:你要獲取的構造方法的構造引數個數及資料型別的class位元組碼檔案物件
Constructor con = c.getConstructor();// 返回的是構造方法物件
// public T newInstance(Object... initargs)
// 使用此 Constructor 物件表示的構造方法來建立該構造方法的宣告類的新例項,並用指定的初始化引數初始化該例項。
Object obj = con.newInstance();//相當於Person p = new Person(); System.out.println(p);
System.out.println(obj);
Person p = (Person)obj;
p.show();
}
}
相關文章
- JAVA之反射學習2-獲取構造方法並使用Java反射構造方法
- Java 通過反射獲取類的資訊(成員變數,成員方法,構造方法)Java反射變數構造方法
- 通過反射獲取私有內部類物件反射物件
- C#通過反射獲取類中的方法和引數個數,反射呼叫方法帶引數C#反射
- PHP --反射 --獲取類的方法PHP反射
- 通過反射獲取上傳檔案方法引數中的檔名反射
- JAVA之反射學習3-反射獲取成員變數並賦值Java反射變數賦值
- org.reflections 介面通過反射獲取實現類原始碼研究反射原始碼
- java反射構建物件和方法的反射呼叫Java反射物件
- 反射的妙用:C#通過反射動態生成型別繼承介面並實現反射C#型別繼承
- 反射--Class物件功能--獲取Method反射物件
- 簡單介紹如何通過註解獲取反射的值反射
- ViewPager(通過反射修改viewpager切換速度)Viewpager反射
- .NET Core 反射獲取所有控制器及方法上特定標籤反射
- 通過反射認識泛型的本質反射泛型
- [轉載] python通過反射執行程式碼Python反射行程
- 對比分析Java反射獲取例項的速度Java反射
- Golang通脈之反射Golang反射
- Java反射與hook混用反射某支付的方法Java反射Hook
- 如何使用反射反射
- 反射基本使用反射
- Java 方法的反射Java反射
- JAVA之反射學習1-如何獲取Class物件Java反射物件
- 教你一種繞過谷歌禁止反射的方法谷歌反射
- c# 反射呼叫方法C#反射
- 如何通過WinDbg獲取方法引數值
- [bug]spring專案通過反射測試私有方法時,注入物件異常Spring反射物件
- Java知識點總結(反射-獲取類的資訊)Java反射
- 反射獲取注入到spring中的類物件的工具類反射Spring物件
- C#反射設定屬性值和獲取屬性值C#反射
- Java反射—初探反射基礎Java反射
- java 反射簡單使用Java反射
- 不學無數——初識反射反射
- C# 透過反射(Reflection)呼叫不同名泛型方法C#反射泛型
- 反射反射
- 透過ASM 反射實現IOCASM反射
- Go 通過反射的reflect設定實際變數的值Go反射變數
- 過多if - else 的問題, 以及策略模式 + 反射解決方法模式反射
- Go 使用反射匯出 ExcelGo反射Excel