今天看到一段代碼:
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()方法了。