Índice:
Definição - O que significa Encapsulamento?
Encapsulamento, no contexto de C #, refere-se à capacidade de um objeto para ocultar dados e comportamentos que não são necessários para o 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 na 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, de modo a impedir que o usuário de uma determinada classe manipule objetos de maneiras que não são planejadas pelo designer. Embora o encapsulamento oculte 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 atender aos requisitos variáveis.
O encapsulamento também é conhecido como ocultação de informações.
Techopedia 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 todo o código 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 à montagem atual e aos tipos derivados da classe que contém
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 salariais.
O C # permite o encapsulamento de dados através do uso de acessadores (para obter dados) e mutadores (para modificar dados), que ajudam na manipulação indireta de dados privados sem torná-los públicos. As propriedades são um mecanismo alternativo para que os dados privados sejam encapsulados em um objeto C # e acessados no modo somente leitura ou no modo leitura / gravação. Diferente do acessador e do mutador, uma propriedade fornece um único ponto de acesso aos valores "set" e "get" de um objeto.