Contenido del Curso
Java POO
Java POO
Principios de POO: Encapsulamiento
Encapsulamiento
Otro principio fundamental de la Programación Orientada a Objetos (OOP). Probablemente el principio más crucial, ya que todo el paradigma OOP se basa en él. Ya te has encontrado con este principio en este capítulo al designar campos y métodos como private
o public
. Pero ahora discutiremos este principio con mayor detalle.
Nota
Por favor, no confundas la palabra 'interface' (una plantilla para la creación, un patrón) con la Interface que estudiaremos en la siguiente sección.
Modificadores de acceso
Los modificadores de acceso son una parte integral del encapsulamiento, así que aunque ya los hemos tratado antes, es necesario repasar este material. A continuación se presenta la definición de modificadores de acceso junto con una tabla y una breve descripción:
public
: Los miembros con el modificador de accesopublic
son accesibles desde cualquier lugar en el código. Tienen el alcance más amplio. Por ejemplo, un métodopublic
puede ser llamado desde cualquier clase;private
: Los miembros con el modificador de accesoprivate
solo son accesibles dentro de la clase donde se declaran. No son visibles para clases externas. Esto proporciona una encapsulación fuerte;protected
: Los miembros con el modificador de accesoprotected
son accesibles dentro del mismo paquete y por las subclases, incluso si están en diferentes paquetes. Esto permite un intercambio controlado de información;default (package-private): Si no se especifica un modificador de acceso, el miembro solo es accesible dentro del mismo paquete. Es el nivel de acceso predeterminado.
Veamos cómo funcionan los modificadores de acceso en la práctica. Hay dos clases: una creada en el mismo paquete que la clase main
, y otra creada en un paquete diferente. Veamos cómo afectan los modificadores de acceso a esto:
En las capturas de pantalla, puedes ver desde dónde son accesibles las variables con los nombres correspondientes.
También te recuerdo que si deseas evitar los modificadores de acceso, puedes leer sobre ello aquí: enlace.
Nota
También vale la pena mencionar que los métodos también pueden tener modificadores de acceso. Funcionan de la misma manera que con los campos. Por ejemplo, un método con un modificador de acceso private solo será accesible en la clase donde fue creado.
Resumen
La encapsulación es muy útil cuando los datos deben organizarse en compartimentos, haciendo que el código sea altamente estructurado. Además, gracias a la encapsulación, puedes configurar dónde y cómo se pueden acceder tus campos y métodos.
1. ¿Qué es la encapsulación en Java?
2. ¿Cuál es el modificador de acceso más restrictivo?
3. ¿Cuáles son los beneficios de la encapsulación?
4. ¿Cuáles de las siguientes afirmaciones sobre la encapsulación son verdaderas?
¡Gracias por tus comentarios!