Encapsulation

O Encapsulamento segue a metáfora da caixa preta.

Você protege o seu objeto de alterações do objeto cliente, porém permite que

o seja  implementado uma funcionalidade, por exemplo, a partir de uma subclasse.

A “pegada” principal do encapsulamento, é que o cliente não saiba (ele não precisa saber

mesmo! ) o que está acontecendo com o meu objeto, ele apenas passa dados ( se tiver que passar)

e recebe os resultados, sem saber o como meu objeto faz isto.

Pegamos um cachorro por exemplo:

aw!
Aw!!!

Você vê o cachorro, o ouve, interage com ele, entretanto você não faz idéia ( alguns fazem ) o

que ocorre dentro do cachorro para que ele também intaraja com você.