반응형
C#에서는 정적 타입 정보 연산자를 사용하여 변수, 메서드, 클래스 등의 타입 정보를 확인할 수 있습니다. 정적 타입 정보 연산자는 다음과 같습니다.
- nameof
- typeof
- type.GetFields
nameof 연산자
nameof 연산자는 변수, 메서드, 클래스 등의 이름을 문자열로 반환합니다. nameof 연산자는 다음과 같은 형식을 사용합니다.
nameof(변수 또는 메서드 또는 클래스)
예를 들어, 다음과 같이 사용할 수 있습니다.
// 변수의 이름을 문자열로 반환합니다.
string variableName = nameof(myVariable);
// 메서드의 이름을 문자열로 반환합니다.
string methodName = nameof(myMethod);
// 클래스의 이름을 문자열로 반환합니다.
string className = nameof(MyClass);
typeof 연산자
typeof 연산자는 변수, 메서드, 클래스 등의 타입 정보를 반환합니다. typeof 연산자는 다음과 같은 형식을 사용합니다.
typeof(변수 또는 메서드 또는 클래스)
예를 들어, 다음과 같이 사용할 수 있습니다.
// 변수의 타입 정보를 반환합니다.
Type variableType = typeof(myVariable);
// 메서드의 타입 정보를 반환합니다.
Type methodType = typeof(myMethod);
// 클래스의 타입 정보를 반환합니다.
Type classType = typeof(MyClass);
type.GetFields()
type.GetFields() 메서드는 클래스의 모든 필드 정보를 반환합니다. type.GetFields() 메서드는 다음과 같은 형식을 사용합니다.
C#
type.GetFields();
예를 들어, 다음과 같이 사용할 수 있습니다.
// MyClass 클래스의 모든 필드 정보를 반환합니다.
FieldInfo[] fields = MyClass.GetFields();
// 반환된 필드 정보를 순회합니다.
foreach (FieldInfo field in fields)
{
// 필드의 이름을 출력합니다.
Console.WriteLine(field.Name);
}
예시
다음은 정적 타입 정보 연산자를 사용하는 예시입니다.
public class MyClass
{
public string MyProperty { get; set; }
public void MyMethod()
{
// nameof 연산자를 사용하여 변수의 이름을 문자열로 반환합니다.
string variableName = nameof(MyProperty);
// typeof 연산자를 사용하여 변수의 타입 정보를 반환합니다.
Type variableType = typeof(MyProperty);
// type.GetFields() 메서드를 사용하여 클래스의 모든 필드 정보를 반환합니다.
FieldInfo[] fields = MyClass.GetFields();
}
}
이 코드는 다음과 같은 출력을 생성합니다.
MyProperty
System.String
MyProperty
이 예시에서 nameof 연산자는 변수 MyProperty의 이름을 문자열로 반환합니다. typeof 연산자는 변수 MyProperty의 타입 정보를 반환합니다. type.GetFields() 메서드는 클래스 MyClass의 모든 필드 정보를 반환합니다.
결론
C#의 정적 타입 정보 연산자는 코드의 가독성과 유지보수를 높이는 데 도움이 됩니다. 정적 타입 정보 연산자를 사용하여 코드에서 타입 정보를 쉽게 확인할 수 있습니다.
'C#' 카테고리의 다른 글
C# 6.0의 catch/finally 블럭에서 await 사용 (0) | 2023.11.08 |
---|---|
Microsoft.CodeAnalysis.LanguageServer client: couldn't create connection to server. (0) | 2023.10.27 |
C# 람다 식 : 캡처 (0) | 2023.10.20 |
C#의 HashSet<T> (0) | 2023.10.19 |
C#의 char 자료형 (0) | 2023.10.18 |