Partilhar via


Como substituir o método ToString (Guia de Programação em C#)

Cada classe ou struct em C# herda implicitamente a Object classe. Portanto, cada objeto em C# obtém o ToString método, que retorna uma representação de cadeia de caracteres desse objeto. Por exemplo, todas as variáveis do tipo int têm um ToString método, que lhes permite retornar seu conteúdo como uma cadeia de caracteres:

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

Quando você cria uma classe personalizada ou struct, você deve substituir o ToString método para fornecer informações sobre seu tipo para o código do cliente.

Para obter informações sobre como usar cadeias de caracteres de formato e outros tipos de formatação personalizada com o ToString método, consulte Tipos de formatação.

Importante

Ao decidir quais informações fornecer por meio desse método, considere se sua classe ou struct será usada por código não confiável. Tenha cuidado para garantir que você não forneça nenhuma informação que possa ser explorada por código mal-intencionado.

Para substituir o ToString método em sua classe ou struct:

  1. Declare um ToString método com os seguintes modificadores e tipo de retorno:

    public override string ToString(){}  
    
  2. Implemente o método para que ele retorne uma cadeia de caracteres.

    O exemplo a seguir retorna o nome da classe, além dos dados específicos de uma instância específica da classe.

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

    Você pode testar o ToString método como mostrado no exemplo de código a seguir:

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

Consulte também