2
respostas

Dúvida resolução

Boa noite,

Na resolução abaixo por que os atributos Nome e Profissao não precisam ser private?

public class Cliente
{
    public string Nome { get; set; }
    private string _cpf;
    public string CPF
    {
        get
        {
            return _cpf;
        }
        set
        {
            // Escrevo minha lógica de validação de CPF
            _cpf = value;
        }
    }
    public string Profissao { get; set; }
}
2 respostas

Olá Luiz, tudo bem?

Esta é apenas uma forma didática de mostrar como funciona um processamento de um valor no setter e como guardar esse valor em um campo privado.

As propriedades ainda estão exposta na aplicação, mas no próximo curso, onde é falado mais a fundo sobre encapsulamento e herança, é descrito melhor sobre quando se deve usar cada tipo de modificador de visibilidade.

Complementando, os atributos estão como públicos para conseguir fazer o acesso direto das propriedades na classe Program, será ensinado quais as melhores formas de usar os campos e propriedades no decorrer da formação.

Espero ter ajudado!

Fabiano, muito obrigado pela explicação!