今天看到一段代码:
namespace ConsoleApplication2
{
class Person
{
public string Name { get; set; }
public int Age { get; set; }
//重写object类的ToString()方法,string类是sealed类,不能override.
public override string ToString()
{
return "Person: " + Name + " " + Age;
}
}
class Program
{
static void Main(string[] args)
{
Person person1 = new Person { Name = "John", Age = 12 };
Console.WriteLine(person1); //会自动调用ToString()方法。
Console.WriteLine(person1.Name.ToString());
Console.WriteLine(person1.ToString());
}
}
}
Console.WriteLine(object)时,会自动调用ToString()方法的。因为string是sealed类,所以被inhrets.不能被inhrets就不能override它的ToString()方法了。
本文探讨了在C#编程中如何通过重写object类的ToString()方法来实现对象的字符串表示,以及自动调用ToString()方法的情况。重点讲解了string类作为sealed类不能被继承和override其ToString()方法的特性。
3414

被折叠的 条评论
为什么被折叠?



