码迷,mamicode.com
首页 > 其他好文 > 详细

PropertyInfo、FieldInfo、MemberInfo的区别

时间:2019-08-13 20:29:40      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:method   test   console   字段   target   foreach   member   http   img   

 

 

 

public class TestClass
{
    private int a = 1;//私有一律获取不到
    public int b
    {
        get { return 2; }
        set { value = 2; }
    }
    public int c = 3;
}

public static void TestMethod()
{
    TestClass test = new TestClass();
    PropertyInfo[] pro = test.GetType().GetProperties();
    FieldInfo[] fil = test.GetType().GetFields();
    MemberInfo[] men = test.GetType().GetMembers();

    foreach (var item in pro)//仅能获取到b属性(输出b=2)
    {
        Console.WriteLine("PropertyInfo: " + item.Name  +"=" + item.GetValue(test, null));
    }
    foreach (FieldInfo item in fil)//仅能获取到c字段(输出c=2)
    {
        Console.WriteLine("FieldInfo: " + item.Name + "=" + item.GetValue(test));
    }
    foreach (MemberInfo item in fil)//仅能获取到c字段(输出c)
    {
        Console.WriteLine("MemberInfo: "+ item.Name );
    }
}

 

技术图片

 

 

 

参考

[整理]C#反射(Reflection)详解

PropertyInfo、FieldInfo、MemberInfo的区别

标签:method   test   console   字段   target   foreach   member   http   img   

原文地址:https://www.cnblogs.com/code1992/p/11348064.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!