Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Get e Set público

Olá pessoal tudo bem? Tenho uma pequena dúvida relacionada as propriedades de um atributo.

codigo 1
private int numeroConta; //atributo ou seja uma variavel
public int NumeroConta //propriedade : gets e sets de um atributo
{ 
    get 
    {
        return numeroConta;
    }  
}

codigo 2
private int numeroConta; //pode ser deletado
public int NumeroConta { get; set; }//propriedade : gets e sets de um atributo

Conforme o 'código 1', tenho um atributo chamado 'numeroConta' e a minha propriedade se chama 'NumeroConta'. A propriedade retorna o valor de 'numeroConta'.

No 'código 2', tenho a mesma implementação só que agora, utilizando o prop do visual studio.

A minha dúvida é : O 'código 2' quando utilizado, a minha propriedade 'NumeroConta' vira um atributo da minha classe e propriedade de si mesma ao mesmo tempo? Se sim, teoricamente esse meu atributo chamado numeroConta, poderia ser deletado pois não está sendo utilizado, correto? O próprio visual studio faz com que esse atributo fique "mais escuro" pois ele não está sendo utilizado.

Ou eu fiz confusão com tudo?

1 resposta
solução!

Para a gente que enquanto estamos desenvolvendo alguma aplicação no c# e vai criar uma classe e dentro dela criar os seus atributos, sim, para nos, pode parecer que ela serve como um atributo ou propriedade ao mesmo tempo, mas isso no seu código 2 é uma "Auto property", ou seja, é basicamente uma propriedade automática, isso é uma maneira mais "enxuta" e mais cômoda no C# de a gente encapsular, assegurar, proteger, os nossos dados, porém por debaixo dos panos o próprio compilador do C# criará em tempo de execução sem que a gente perceba e nem veja até, um método get e set para aquele seu atributo declarado dessa maneira, então não precisaria desse "private int numeroConta", só seria viável se criasse uma propriedade igual no seu código 1.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software