
Encapsulación
La encappsulación tambien conocida como ocultamiento, se refiere a que todos los objetos restrigen la visibilidad de sus recursos (atributos y metodos) al resto de los objetos. Las tres areas de visibilidad de una clase (publica, privada y protegida) son la base de la encapsulación.
Cada objeto posee una interface que determina la manera de interactuar con el. La implementación del objeto (su interior) es encapsulada, lo que quiere decir que desde fuera el objeto es invisible, simplemente se usa.
Cuando se define una clase hay que tener mucho cuidado en el diseño de los componentes publicos, intentando declarar tan pocos como sea posible. Los atributos publicos son visibles externamente y forman parte de la interfaz entre un objeto y sus usuarios.
Los componentes publicos de las clases globales no pueden ser cambiados una vez que se ha liberado la clase. Si se quiere encapsular el estado de un objeto completamente no se tiene que declarar ningun atributo publico.