首页 > 后端开发 > C++ > 如何在 C# 中使用反射访问私有方法?

如何在 C# 中使用反射访问私有方法?

DDD
发布: 2025-01-25 05:17:09
原创
549 人浏览过

How Can I Access Private Methods Using Reflection in C#?

>利用反射来调用私人C#方法

> C#中的反射提供了访问和调用私人类方法的功能 - 通常限制外部代码的功能。 在需要动态方法调用的情况下,这可能是有利的,这取决于运行时数据。

您的代码代码段利用

>通过名称找到方法。 但是,默认为排除私人成员。要包含私有方法,您必须在调用

>时将特定的GetMethod()合并:GetMethod()> BindingFlags GetMethod()

确保在搜索中包含非公共(私有)方法,而
MethodInfo dynMethod = this.GetType().GetMethod("Draw_" + itemType, 
BindingFlags.NonPublic | BindingFlags.Instance);
dynMethod.Invoke(this, new object[] { methodParams });
登录后复制
>将搜索限制为实例方法。 这种组合保证

正确地标识了当前类实例中所需的私有方法。> BindingFlags.NonPublic>有关自定义方法搜索的详细信息,请咨询有关BindingFlags.Instance枚举的C#文档。 本文档全面列出了所有可用的标志,以精炼跨方法,字段和其他类成员。GetMethod()

以上是如何在 C# 中使用反射访问私有方法?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板