Megosztás a következőn keresztül:


A ToString metódus felülbírálása (C# programozási útmutató)

A C# minden osztálya vagy felépítése implicit módon örökli a Object osztályt. Ezért a C# minden objektuma megkapja a ToString metódust, amely az objektum sztring-ábrázolását adja vissza. Például minden int típusú változó rendelkezik egy ToString metódussal, amely lehetővé teszi, hogy sztringként adja vissza a tartalmát:

int x = 42;
string strx = x.ToString();
Console.WriteLine(strx);
// Output:
// 42

Saját osztály vagy struktúra létrehozásakor felül kell írnia a ToString metódust, hogy a típusával kapcsolatos információkat biztosítson az ügyfélkód számára.

A formázási sztringek és más típusú egyéni formázások ToString metódussal való használatáról további információt a Formázástípusokcímű témakörben talál.

Fontos

Amikor eldönti, hogy milyen információkat adjon meg ezen a módszeren keresztül, fontolja meg, hogy az osztályt vagy a szerkezetet valaha is felhasználja-e a nem megbízható kód. Ügyeljen arra, hogy ne adjon meg olyan információt, amelyet rosszindulatú kóddal lehet kihasználni.

A ToString metódus felülbírálása a te osztályodban vagy struktúrádban:

  1. Deklaráljon egy ToString metódust a következő módosítókkal és visszatérési típussal:

    public override string ToString(){}  
    
  2. Implementálja a metódust úgy, hogy sztringet visszaadjon.

    Az alábbi példa az osztály nevét adja vissza az osztály egy adott példányára vonatkozó adatok mellett.

    class Person
    {
        public string Name { get; set; }
        public int Age { get; set; }
    
        public override string ToString()
        {
            return "Person: " + Name + " " + Age;
        }
    }
    

    A ToString metódust az alábbi kód példában látható módon tesztelheti:

    Person person = new() { Name = "John", Age = 12 };
    Console.WriteLine(person);
    // Output:
    // Person: John 12
    

Lásd még