当前位置: 首页 > ops >正文

c# System.Reflection 反射

反射(C# 编程指南)

通过 System.Reflection 命名空间中的类以及 System.Type,您可以获取有关已加载的程序集和在其中定义的类型(如类、接口和值类型)的信息。您也可以使用反射在运行时创建类型实例,以及调用和访问这些实例。

反射提供了封装程序集、模块和类型的对象(Type 类型)。可以使用反射动态创建类型的实例,将类型绑定到现有对象,或从现有对象获取类型并调用其方法或访问其字段和属性。如果代码中使用了属性,可以利用反射对它们进行访问。有关更多信息,请参见属性。

下面是使用静态方法 GetType-- 从 Object 基类派生的所有类型都继承该方法 -- 获取变量类型的简单反射示例:

C#
//  Using GetType to obtain type information:
int  i  =   42 ;
System.Type type 
=  i.GetType();
System.Console.WriteLine(type);

输出为:

System.Int32

此示例使用反射获取已加载的程序集的完整名称:

//  Using Reflection to get information from an Assembly:
System.Reflection.Assembly o  =  System.Reflection.Assembly.Load( " mscorlib.dll " );
System.Console.WriteLine(o.GetName());

输出为:

mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089

反射概述

反射在下列情况下很有用:

  • 需要访问程序元数据的属性。请参见主题使用反射访问属性。

  • 检查和实例化程序集中的类型。

  • 在运行时构建新类型。使用 System.Reflection.Emit 中的类。

  • 执行后期绑定,访问在运行时创建的类型的方法。请参见主题动态加载和使用类型。

转载于:https://www.cnblogs.com/lean/articles/967946.html

http://www.xdnf.cn/news/10950.html

相关文章:

  • dedecms标签大全
  • 什么是SEO?
  • Div+CSS布局入门教程
  • 照相馆选照片管理_家庭娱乐:与照相馆和Windows Live空间共享照片
  • 该内存不能为“read”的几个解决方案
  • Zigzag扫描Matlab实现
  • 虚拟机Ubuntu开启出现:An internal error occurred during:
  • 网页技术革命:精美绝伦的 HTML5 个人作品集网站
  • 取消 UpdatePanel 更新
  • [Java Web]Response对象
  • AMD双核所有驱动,补丁,优化下载地址和安装方法
  • 信息安全概论(期末知识点复习)_信息安全8个安全目标与需求可存活性内容(1)
  • 使用Python抓取豆瓣电影评论并分析词云生成词云图
  • 【Element进阶】1、深入理解Element UI的国际化
  • 国内外 Ubuntu 衍生版比较
  • 基于ssm网络教学平台的设计与实现论文
  • 启动程序出现msvcrt40.dll文件丢失问题解决
  • 【中创】壹起共享“免费”网络资源库-持续更新中
  • 【网络安全】简单的免杀方法(非常详细)零基础入门到精通,收藏这一篇就够了
  • iproute2路由配置(ip rule、ip route、traceroute)
  • 交联剂的作用和溶解性的说明
  • 详谈调用winpcap驱动写arp多功能工具
  • 在线手机WAP模拟器或软件,用电脑IE浏览器在线浏览手机wap网站
  • DevOps - Spug 自动化运维平台
  • 四元素、旋转矩阵与旋转向量
  • PH热榜 | 2025-06-03
  • 61、ESB详解
  • 【小红书】API接口,获取笔记列表
  • HCIP-Datacom Core Technology V1.0_3 OSPF基础
  • Python数据分析及可视化中常用的6个库及函数(一)