如何替代 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