Jak: přepište metodu ToString (C# Příručka programování)
Implicitně dědí všechny třída nebo struktura v jazyce C# Object třída. Proto dostane každý objekt v jazyce C# ToString metoda, která vrací řetězcové vyjádření objekt. Například všechny proměnné typu int jste ToString metoda, která umožňuje návrat jejich obsah jako řetězec:
int x = 42;
string strx = x.ToString();
Console.WriteLine(strx);
// Output:
// 42
Po vytvořit vlastní třída nebo struktura, měli byste přepsat ToString metoda poskytovat informace o typu kódu klienta.
Informace o použití formátu řetězce a jiné typy vlastní formátování ToString metodaviz Typy formátování.
Poznámka k zabezpečení |
---|
Při rozhodování, jaké informace poskytovat prostřednictvím této metoda, zvažte, zda třída nebo struktura bude někdy používán nedůvěryhodný kód.Dejte pozor, aby neposkytují žádné informace, které lze zneužít prostřednictvím škodlivého kódu. |
přepsat metoda ToString ve třída nebo struktura
Deklarovat ToString metoda pomocí následujících modifikátorů a návratový typ:
public override string ToString(){}
Implementujte metoda tak, že vrátí řetězec.
Následující příklad vrátí název třída vedle údajů specifické pro konkrétní instanci třída.
class Person { public string Name { get; set; } public int Age { get; set; } public override string ToString() { return "Person: " + Name + " " + Age; } }
Můžete test ToString metoda , jak je znázorněno v následujícím příkladu kódu:
Person person = new Person { Name = "John", Age = 12 }; Console.WriteLine(person); // Output: // Person: John 12
Viz také
Referenční dokumentace
Třídy a struktur (Příručka programování C#)