Encapsulación
Encapsulación consiste en proteger los datos de un objeto para que no puedan ser manipulados directamente desde fuera, exponiendo solo lo necesario mediante métodos o propiedades controladas.
1. Ejemplo Malo: Sin Encapsulación #
Cargando actividad al acercarte…
2. Ejemplo Corregido: Encapsulación con Atributos Públicos y Privados #
3. Beneficios #
- Encapsulación: El atributo
speedestá protegido y solo puede ser manipulado por métodos de la clase. - Control de acceso: Aunque
licensePlatees público,speedsolo se modifica de forma controlada. - Seguridad: Evita estados inválidos o inconsistentes al restringir modificaciones directas a atributos internos.
- Flexibilidad: Puedes cambiar la lógica interna de los atributos privados sin afectar a quienes usan la clase.
Cargando actividad al acercarte…
Resumen del tema
Conceptos clave #
- Ocultamiento de Información: mantener el estado interno privado (
private,#prop,__attr) para impedir manipulaciones directas e inconsistentes desde el exterior. - Exposición a través de Métodos: definir una API pública controlada con métodos que validen y mantengan invariantes del objeto.
- Bajo Acoplamiento: permite cambiar la representación interna de los datos sin afectar el código que interactúa con la clase.
Qué debes recordar #
Protege el estado interno haciendo los atributos privados y exponiendo únicamente métodos con comportamiento significativo.