Executando verificação de segurança...
7

Complementando, existe outra forma de declarar propriedades que caem neste caso mais "comum" (o getter só retorna e o setter só recebe o valor). Basta usar a sintaxe de Auto-implemented properties.

E neste caso, para criar o objeto, use um object initializer:

public class Pessoa
{
    // Auto-implemented properties
    public string Nome { get; set; }
    public int Idade { get; set; }
}

// object initializer
var pessoa = new Pessoa { Nome = "Fulano de tal", Idade = 42 };
Console.WriteLine($"{pessoa.Nome} tem {pessoa.Idade} anos");

Lembrando que para usar object initializer, a classe precisa ter o construtor sem parâmetros.


Ou então vc cria o construtor, aí pode inicializar do jeito mais "tradicional":

public class Pessoa
{
    public string Nome { get; set; }
    public int Idade { get; set; }

    public Pessoa(string nome, int idade)
    {
        this.Nome = nome;
        this.Idade = idade;
    }
}

// usa o construtor em vez de object initializer
var pessoa = new Pessoa("Fulano de tal", 42);
Console.WriteLine($"{pessoa.Nome} tem {pessoa.Idade} anos");
Carregando publicação patrocinada...