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

Diferença entre as variáveis

Neste código, porque a variável é "declarada" duas vezes. como private e public / iniciando com letra maiúscula e minúscula? Qual a diferença?

class Endereco
{
    private string rua;
    private string cidade;
    private string estado;

public string Rua
{
    get { return rua; }
    set { rua = value; }
}

public string Cidade
{
    get { return cidade; }
    set { cidade = value; }
}

public string Estado
{
    get { return estado; }
    set { estado = value; }
}
1 resposta
solução!

Oi Thamyres,

A sua dúvida é muito comum no início dos estudos em C# e orientação a objetos! 😊

No código que você compartilhou, temos dois tipos de declarações de variáveis que, apesar de terem nomes parecidos, desempenham papéis diferentes:

  1. Variáveis de campo (privadas): private string rua;, private string cidade;, private string estado;

    • São declaradas com a palavra-chave private, o que significa que elas só podem ser acessadas diretamente dentro da própria classe Endereco.
    • Geralmente, são escritas com a primeira letra minúscula por convenção.
    • Elas armazenam os dados da classe.
  2. Propriedades (públicas): public string Rua { get; set; }, public string Cidade { get; set; }, public string Estado { get; set; }

    • São declaradas com a palavra-chave public, o que significa que podem ser acessadas de qualquer lugar (outras classes, métodos, etc.).
    • Geralmente, são escritas com a primeira letra maiúscula por convenção.
    • Elas fornecem uma forma controlada de acessar e modificar os valores das variáveis de campo.
    • O get permite ler o valor da variável de campo e o set permite atribuir um novo valor.

Em resumo, as variáveis de campo (privadas) armazenam os dados, enquanto as propriedades (públicas) fornecem uma interface para acessar e modificar esses dados de forma controlada. 🤔

Isso é um dos pilares do encapsulamento na orientação a objetos.

Para saber mais: Propriedades (Guia de Programação em C#). Este link da documentação oficial da Microsoft explica detalhadamente o conceito de propriedades em C#.

Continue praticando e explorando os conceitos da orientação a objetos! 💪