首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

理解 C# 反射機制(一):核心概念、架構層級與應用場景

     編輯:關於C語言

反射定義

反射允許執行時檢查、操作組件中的型別資訊(類別、結構、介面、列舉、委派等),包含成員(方法、屬性、事件、建構函數、欄位)的名稱、修飾詞、參數等,並能動態建立實例、呼叫方法。

應用程式結構層級

  1. 應用程式域
  2. 組件
  3. 模組
  4. 型別
  5. 成員

CLR 載入器管理應用程式域與組件載入、型別記憶體配置。

System.Reflection 主要類別與用途

類別用途
Assembly載入組件、列舉模組、尋找型別、建立實例
Module取得所屬組件、列舉型別、全域方法
ConstructorInfo建構函數中繼資料、動態建立實例
MethodInfo方法中繼資料、動態呼叫方法
FieldInfo欄位中繼資料、讀寫欄位值
EventInfo事件中繼資料、加掛/移除處理器
PropertyInfo屬性中繼資料、讀寫屬性值
ParameterInfo參數中繼資料(名稱、型別、in/out、位置)

進階與應用場景

  • System.Reflection.Emit:執行時動態產生型別/組件。
  • 型別瀏覽器:讓使用者選擇型別並檢視詳細資訊。
  • JScript 編譯器建構符號表。
  • 序列化(System.Runtime.Serialization)判斷持久化欄位。
  • 遠端處理(System.Runtime.Remoting)透過序列化間接使用反射。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved