방법: ToString 메서드 재정의(C# 프로그래밍 가이드)
C#의 모든 클래스나 구조체는 Object 클래스를 암시적으로 상속합니다.따라서 C#의 모든 개체는 해당 개체에 대한 문자열 표현을 반환하는 ToString 메서드를 가집니다.예를 들어, int 형식의 모든 변수에는 그 내용을 문자열로 반환하는 데 사용할 수 있는 ToString 메서드가 있습니다.
int x = 42;
string strx = x.ToString();
Console.WriteLine(strx);
// Output:
// 42
사용자 지정 클래스나 구조체를 만들 때 클라이언트 코드에 해당 형식에 대한 정보를 제공하려면 ToString 메서드를 재정의해야 합니다.
형식 문자열의 함께 사용자 지정 서식을 사용 하는 방법에 대 한 정보는 ToString메서드를 참조 하십시오 형식 서식 지정.
보안 정보 |
---|
이 메서드를 통해 제공할 정보를 결정할 때는 클래스나 구조체가 신뢰할 수 없는 코드에서 사용될지를 고려합니다.악성 코드에서 악용될 수 있는 정보는 제공하지 마십시오. |
클래스나 구조체에서 ToString 메서드를 재정의하려면
다음 한정자와 반환 형식을 사용하여 ToString 메서드를 선언합니다.
public override string ToString(){}
문자열이 반환되도록 메서드를 구현합니다.
다음 예제에서는 클래스의 이름뿐 아니라 클래스의 특정 인스턴스와 관련된 데이터도 반환합니다.
class Person { public string Name { get; set; } public int Age { get; set; } public override string ToString() { return "Person: " + Name + " " + Age; } }
다음 코드 예제와 같이 ToString 메서드를 테스트할 수 있습니다.
Person person = new Person { Name = "John", Age = 12 }; Console.WriteLine(person); // Output: // Person: John 12