Conceitos de Orientação a Objetos/Encapsulamento
Todo atributo de uma classe só poderá ser manipulado pelos métodos da própria classe. Aliado ao conceito de ocultamento de informação, é um poderoso mecanismo da programação orientada a objetos. Com este mecanismo podemos ocultar detalhes de uma estrutura complexa, que poderiam interferir durante o processo de análise. A imagem acima ilustra como funciona a técnica de encapsulamento. Detalhes internos do funcionamento dos métodos de uma classe são ocultados para os objetos. . Um outro exemplo, seria um carro. Do ponto de vista do usuário, não importa como o carro funciona internamente, apenas se ele é capaz de executar aquilo para qual foi criado, ou seja, se locomover de um ponto A para um ponto B. Sendo assim, um objeto que precise de outro para realizar uma tarefa, se limita apenas enviar uma mensagem solicitando esta ajuda, sem conhecer os métodos(modo de fazer) do objeto requisitado para executar a tarefa.