Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Každá třída nebo struktura v jazyce C# implicitně dědí Object třídu. Proto každý objekt v jazyce C# získá metodu ToString , která vrátí řetězcovou reprezentaci tohoto objektu. Například všechny proměnné typu int
mají metodu ToString
, která jim umožňuje vrátit jejich obsah jako řetězec:
int x = 42;
string strx = x.ToString();
Console.WriteLine(strx);
// Output:
// 42
Při vytváření vlastní třídy nebo struktury byste měli přepsat metodu ToString, abyste poskytli informace o vašem typu klientskému kódu.
Informace o použití formátovací řetězce a další typy vlastního formátování s metodou ToString
naleznete v tématu Typy formátování.
Důležité
Když se rozhodnete, jaké informace chcete prostřednictvím této metody poskytnout, zvažte, jestli bude vaše třída nebo struktura někdy používána nedůvěryhodným kódem. Dávejte pozor, abyste nezadáli žádné informace, které by mohl zneužít škodlivý kód.
Abyste přepsali ToString
metodu ve své třídě nebo struktuře:
Deklarujte metodu
ToString
s následujícími modifikátory a návratovým typem:public override string ToString(){}
Implementujte metodu tak, aby vrátil řetězec.
Následující příklad vrátí název třídy kromě dat specifických pro konkrétní instanci třídy.
class Person { public string Name { get; set; } public int Age { get; set; } public override string ToString() { return "Person: " + Name + " " + Age; } }
Metodu
ToString
můžete otestovat, jak je znázorněno v následujícím příkladu kódu:Person person = new() { Name = "John", Age = 12 }; Console.WriteLine(person); // Output: // Person: John 12
Viz také
- IFormattable
- Systém typů jazyka C#
- Řetězce
- string
- přepsání
- virtuální
- typy formátování