Encapsulamento

Definição - o que significa encapsulamento?

O encapsulamento, no contexto do C #, refere-se à capacidade de um objeto de ocultar dados e comportamento desnecessários ao usuário. O encapsulamento permite que um grupo de propriedades, métodos e outros membros sejam considerados uma única unidade ou objeto.

A seguir estão os benefícios do encapsulamento:

  • Proteção de dados contra corrupção acidental
  • Especificação da acessibilidade de cada um dos membros de uma classe ao código fora da classe
  • Flexibilidade e extensibilidade do código e redução da complexidade
  • Menor acoplamento entre objetos e, portanto, melhoria na manutenção do código

O encapsulamento é usado para restringir o acesso aos membros de uma classe, a fim de evitar que o usuário de uma determinada classe manipule objetos de maneiras não pretendidas pelo designer. Enquanto o encapsulamento oculta a implementação interna das funcionalidades da classe sem afetar o funcionamento geral do sistema, ele permite que a classe atenda a uma solicitação de funcionalidade e adicione ou modifique sua estrutura interna (dados ou métodos) para se adequar aos requisitos em mudança.

O encapsulamento também é conhecido como ocultação de informações.

Definirtec explica encapsulamento

O encapsulamento em C # é implementado com diferentes níveis de acesso aos dados do objeto que podem ser especificados usando os seguintes modificadores de acesso:

  • Público: acesso a todos os códigos do programa
  • Privado: acesso apenas a membros da mesma classe
  • Protegido: acesso a membros da mesma classe e suas classes derivadas
  • Interno: Acesso à montagem atual
  • Interno protegido: acesso ao conjunto atual e tipos derivados da classe contida

O encapsulamento pode ser ilustrado com um exemplo de um objeto Employee que armazena detalhes desse objeto. Ao usar o encapsulamento, o objeto Employee pode expor os dados (como Name, EmployeeID, etc.) e métodos (como GetSalary) necessários para usar o objeto, enquanto oculta seus campos e métodos irrelevantes de outros objetos. É fácil ver uma situação em que todos os usuários podem acessar informações básicas sobre um funcionário enquanto restringem as informações de salário.

C # permite o encapsulamento de dados por meio do uso de acessadores (para obter dados) e modificadores (para modificar dados), que ajudam a manipular dados privados indiretamente, sem torná-los públicos. Propriedades são um mecanismo alternativo para que dados privados sejam encapsulados em um objeto C # e acessados ​​no modo somente leitura ou no modo leitura-gravação. Ao contrário do acessador e do modificador, uma propriedade fornece um único ponto de acesso aos valores "set" e "get" de um objeto.

Esta definição foi escrita no contexto de C #