ACP*_*ACP 16
Reflection提供了封装程序集,模块和类型的对象(Type类型).您可以使用反射来动态创建类型的实例,将类型绑定到现有对象,或从现有对象获取类型并调用其方法或访问其字段和属性.如果您在代码中使用属性,则可以使用反射来访问它们...
作为参考,MSDN关于反思的文章和The Code Project的反思很好地解释了..
例如,看看C#反射示例.
从文档:
Reflection提供了封装程序集,模块和类型的对象(Type类型).您可以使用反射来动态创建类型的实例,将类型绑定到现有对象,或从现有对象获取类型并调用其方法或访问其字段和属性.如果您在代码中使用属性,则Reflection允许您访问它们.有关更多信息,请参阅属性.
维基百科说:
在计算机科学中,反射是计算机程序可以观察和修改其自身结构和行为的过程.反射驱动的编程范式称为反射编程.这是一种特殊的元编程.
例如,如果要以编程方式显示类的所有方法,可以这样做:
using System;
using System.Reflection;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
var t = typeof(MyClass);
foreach (var m in t.GetMethods())
{
Console.WriteLine(m.Name);
}
Console.ReadLine();
}
}
public class MyClass
{
public int Add(int x, int y)
{
return x + y;
}
public int Subtract(int x, int y)
{
return x - y;
}
}
}
Run Code Online (Sandbox Code Playgroud)