Jak: Zastąp metodę ToString (C# Programming Guide)
Każdej klasy lub struktury w C# niejawnie dziedziczy Object klasy.W związku z tym, pobiera każdy obiekt w C# ToString metoda, która zwraca ciąg reprezentujący tego obiekt. Na przykład wszystkie zmienne typu int mają ToString metoda, która umożliwia im przywrócić ich zawartość jako ciąg znaków:
int x = 42;
string strx = x.ToString();
Console.WriteLine(strx);
// Output:
// 42
Podczas utworzyć niestandardowej klasy lub struct powinny zastępować ToString metoda w celu zapewnienia informacji o typie, aby kod klienta.
Aby uzyskać informacje dotyczące używania ciągi formatów i inne typy formatowania niestandardowego z ToString metoda, zobacz Typy formatowania.
Uwaga dotycząca zabezpieczeń |
---|
Po zdecydowaniu, jakie informacje zapewniające za pomocą tej metoda, należy rozważyć, czy klasy lub struktury będą coraz używane przez niezaufany kod.Należy zachować ostrożność w celu zapewnienia, że nie zapewniają wszelkie informacje, która może być wykorzystana przez złośliwego kodu. |
Aby zastąpić ToString metoda w klasie lub strukturze
Oświadczają, ToString metoda z następujących modyfikatorów oraz zwrócony typ:
public override string ToString(){}
Implementuje metoda , dzięki czemu zwraca ciąg znaków.
Poniższy przykład zwraca nazwę klasy, w uzupełnieniu do danych określonych do konkretnej instancji klasy.
class Person { public string Name { get; set; } public int Age { get; set; } public override string ToString() { return "Person: " + Name + " " + Age; } }
Można przetestować ToString metoda , jak pokazano w poniższym przykładzie:
Person person = new Person { Name = "John", Age = 12 }; Console.WriteLine(person); // Output: // Person: John 12
Zobacz też
Informacje
Klasy i strukturach (Podręcznik programowania C#)