猿问

C#反射GetMembers()方法

namespace ReflectionExample
{
using System;
using System.Reflection;
public class RefExample2
{
private int sum;
public void addition(int num1, int num2)
{
sum = num1 + num2;
}

public static int Main()
{
Type t1 = typeof(RefExample2);
MemberInfo[] memInfo = t1.GetMembers();
foreach (MemberInfo mInfo in memInfo)
{
Console.WriteLine(mInfo);
}
Console.ReadLine();
return 0;
}
}
}
以上代码是使用GetMembers()方法检索RefExample2类的成员,输出结果为:
Void addition(Int32, Int32)
Int32 Main()
System.type GetType() //指的是什么?
System.String ToString() //指的是什么?
Boolean Equals(System.Object) //指的是什么?
Int32 GetHashCode() //指的是什么?
Void .ctor() //指的是什么?

噜噜哒
浏览 1816回答 2
2回答

米琪卡哇伊

GetType()指的是你的类中有这个方法其实这个方法继承自Object类.(所有的类和结构枚举都默认继承自System.Object)ToString(),Equals(System.Object),GetHashCode()都一样,他们都继承自Object。非别是1,获取System.RuntimeType;//实际上显示的是System.Type这个抽象类.2,当前对象的字符串表示.3, 比较当前对象.4, 返回当前对象的哈希值.最后一个Void.ctor是构造函数.

30秒到达战场

他们分别是:1.获取System.RuntimeType;//实际上显示的是System.Type这个抽象类。2.当前对象的字符串表示.3.比较当前对象.4.返回当前对象的哈希值.最后一个Void.ctor是构造函数.GetType()指的是你的类中有这个方法其实这个方法继承自Object类.(所有的类和结构枚举都默认继承自System.Object) 。ToString(),Equals(System.Object),GetHashCode()都一样,他们都继承自Object。反射类型的成员就是反射层次模型中最下面的一层数据。我们可以通过type对象的GetMembers 方法取得一个类型的成员。如果我们使用的是不带参数的GetMembers,它只返回该类型的公共定义的静态变量和实例成员,我们也可以通过使用带参数的 GetMembers通过参数设置来返回指定的类型成员。具体参数参考msdn 中system.reflection.bindingflags 枚举类型的详细说明。
随时随地看视频慕课网APP
我要回答