首頁 > 後端開發 > C++ > 如何使用反射在C#中調用私人實例方法?

如何使用反射在C#中調用私人實例方法?

Linda Hamilton
發布: 2025-01-25 05:11:09
原創
822 人瀏覽過

How Can I Use Reflection to Invoke Private Instance Methods in C#?

在 C# 中利用反射呼叫私有實例方法

從同一物件內動態呼叫私有方法需要使用 GetMethod() 和正確的 BindingFlagsGetMethod() 的預設行為僅傳回公共成員。

要存取私有實例方法,請像這樣修改您的程式碼:

<code class="language-csharp">MethodInfo dynMethod = this.GetType().GetMethod("Draw_" + itemType,
    BindingFlags.NonPublic | BindingFlags.Instance);
dynMethod.Invoke(this, new object[] { methodParams });</code>
登入後複製

BindingFlags 枚舉控制方法搜尋。 BindingFlags.NonPublic 包含私人方法,BindingFlags.Instance 確保您的目標是實例方法(而不是靜態方法)。

以上是如何使用反射在C#中調用私人實例方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板