Практическое руководство. Переопределение метода 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
См. также
Ссылки
Классы и структуры (Руководство по программированию в C#)
Основные понятия
Руководство по программированию на C#