1
resposta

Alternativa B

Olá, fiquei com uma dúvida em relação à afirmação da alternativa B.

O código public int Idade { get; set; } cria um campo privado? Mas não é público?

1 resposta

Olá Andre,

Quando se declara uma propriedade, o .Net cria automaticamente um campo privado para guardar essa informação, se o .Net não fizesse essa criação oculta, você precisaria criar um propriedade assim:

public class Pessoa
{
    private int _idade;

    public int Idade 
    {
        get
        {
            return _idade;
        }
        set
        {
            _idade = value;
        }
    }

    public int getIdade()
    {
        return _idade;
    }

    public void setIdade(int value)
    {
        _idade = value;
    }    
}

Perceba que private int _idade precisou ser declarado para guardar o valor da propriedade, é isso que a alternativa B se refere, isso não muda a visibilidade da sua propriedade que continua public int Idade

Espero ter conseguido explicar, pode copiar essa classe e testar ela no código, para entender esse mecanismo oculto

Se a dúvida permanecer, só falar!

Abraço!