using System;
using System.Reflection;
namespace _111
{
class A
{
private int hour;
public int min, sec;
protected int day;
public A(int d,int h, int m, int s)
{
day = d;
hour = h;
min = m;
sec = s;
}
public void OutTime()
{
Console.WriteLine("현재 시간은 {0}시 {1}분 {2}초이다. {3}일이고", hour, min, sec,day);
}
}
}
class B
{
static void Main()
{
_111.A Now = new _111.A(1, 2, 3,4);
Type TimeType = Now.GetType();
FieldInfo[] TimeField = TimeType.GetFields();
for (int i = 0; i < TimeField.Length; i++)
{
Console.WriteLine("{0}번째 필드 = {1}", i, TimeField[i].Name);
}
}
}
그렇습니다.
직접 테스트해본 결과
using System; using System.Reflection; namespace _111 { class A { private int hour; public int min, sec; protected int day; public A(int d,int h, int m, int s) { day = d; hour = h; min = m; sec = s; } public void OutTime() { Console.WriteLine("현재 시간은 {0}시 {1}분 {2}초이다. {3}일이고", hour, min, sec,day); } } } class B { static void Main() { _111.A Now = new _111.A(1, 2, 3,4); Type TimeType = Now.GetType(); FieldInfo[] TimeField = TimeType.GetFields(); for (int i = 0; i < TimeField.Length; i++) { Console.WriteLine("{0}번째 필드 = {1}", i, TimeField[i].Name); } } }결과
0번째 필드 = min
1번째 필드 = sec
public필드만 냐오는 군요.
댓글 달기