Reflection C#

using System;
using System.Reflection;
public class Demo
{
    private string m_field = "String A";
    public string Field = "String B";
    public const string FieldC = "String C";
}
public class Myfieldattributes
{
    public static void Main()
    {
        Demo d = new Demo();
        Type myType = typeof(Demo);
        FieldInfo fiPrivate = myType.GetField("m_field",BindingFlags.NonPublic | BindingFlags.Instance);
        DisplayField(d, fiPrivate);
        FieldInfo fiPublic = myType.GetField("Field",BindingFlags.Public | BindingFlags.Instance);
        DisplayField(d, fiPublic);
        FieldInfo fiConstant = myType.GetField("FieldC",BindingFlags.Public | BindingFlags.Static);
        DisplayField(d, fiConstant);
    }
    static void DisplayField(Object obj, FieldInfo f)
    { 
        Console.WriteLine("{0} = \"{1}\"; attributes: {2}", f.Name, f.GetValue(obj), f.Attributes);
    }
}