2019-12-17,反射

反射提供描述程序集、模块和类型的对象(Type 类型)。
可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型,然后调用其方法或访问其字段和属性。

using System;
using System.Reflection;
//使用方法 GetType()(被 Object 基类的所有类型继承)以获取变量类型

int i = 42;
Type type = i.GetType();
Console.WriteLine(type);

//反射获取已加载的程序集的完整名称。
Assembly info = typeof(int).Assembly;
Console.WriteLine(info);

Type 类

定义

<dl class="attributeList" style="box-sizing: inherit; margin: 0px; padding: 0px; display: flex;">

<dt style="box-sizing: inherit; margin: 0px; padding: 0px;">命名空间:</dt>

<dd style="box-sizing: inherit; margin: 0px 0px 0px 8px; padding: 0px;">System</dd>

</dl>

<dl class="attributeList" style="box-sizing: inherit; margin: 0px; padding: 0px; display: flex;">

<dt style="box-sizing: inherit; margin: 0px; padding: 0px;">程序集:</dt>

<dd style="box-sizing: inherit; margin: 0px 0px 0px 8px; padding: 0px;">System.Runtime.dll, mscorlib.dll, netstandard.dll</dd>

</dl>

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

继承
Object
MemberInfo
Type
派生
System.Reflection.TypeDelegator
System.Reflection.TypeInfo
System.Reflection.Emit.EnumBuilder
System.Reflection.Emit.GenericTypeParameterBuilder
System.Reflection.Emit.TypeBuilder
属性
ClassInterfaceAttribute ComVisibleAttribute SerializableAttribute
实现
IReflect _Type

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 今天稍微看了下反射的东西,虽然还不是很明白,但也写写随笔,加深下印象。 1、反射是什么东西? Refl...
    北风知我意阅读 1,268评论 0 0
  • 概念 反射机制是使程序具有动态特性的非常关键的一种机制 需求1:根据指定的类名,类字段名和所对应的数据,得到该类的...
    沉麟阅读 1,062评论 0 0
  • 在面试中,通常会考察反射的定义(操作元数据),可以用反射做什么(获得程序集及其各个部件),反射有什么使用场景(OR...
    aslbutton阅读 850评论 0 52
  • 什么是反射 反射 [Reflection]:是.Net中获取运行时类型信息的方式,.Net的应用程序共有三个部分:...
    passiony阅读 509评论 0 3
  • 原创:王慧谈教培企业 每天一篇原创文章的第44篇 人的一辈子如果按天算,一共有多少天? 有人计算过,人活到84岁,...
    百慧园阅读 424评论 0 4