Ejercicio de programación con PHP: Reto encapsulación avanzada
0h 30m
Crea una jerarquía de clases con propiedades privadas y protegidas, usando getters y setters tipados para profundizar en la encapsulación avanzada en PHP.
Crea desde cero una clase llamada Avion que represente características generales de una aeronave.
Define propiedades privadas y protegidas (como capacidad de pasajeros y un identificador de vuelo) con tipos de datos apropiados, y asegúrate de que no puedan asignarse valores inválidos.
Implementa métodos públicos para obtener (get) y establecer (set) dichos valores.
A continuación, crea una clase AvionDePasajeros que herede de Avion y gestiona dentro de ella algún método protegido que solo deba ser accesible por la clase padre y las clases hijas (por ejemplo, un método que calcule la carga máxima permitida).
No está permitido el acceso directo a las propiedades protegidas o privadas desde fuera de estas clases, y el sistema debe mostrar un mensaje controlado si se intenta asignar datos inconsistentes.
Usa las propiedades tipadas de PHP y aplica apropiadamente el nivel de visibilidad más restrictivo posible.
El código debe ser ejecutable en un único archivo sin depender de un framework.
Todos los ejercicios de programación de PHP
Evalúa tus conocimientos con ejercicios de programación en PHP de tipo Test, Puzzle, Código y Proyecto con VSCode.
Patrones de diseño
Reto clases y objetos
Tipos de datos, variables y constantes
Reto herencia
Reto archivos en formularios
Reto polimorfismo
Reto arrays
Reto formularios
Reto test con PHPUnit
Reto conexión a bases de datos
Reto transacciones
Reto try catch excepciones
Estructuras de control
Reto sentencias CRUD con PDO
Reto try catch de PDOException
Reto manejo de números
Reto archivos temporales
Calculadora en PHP
Reto sesiones
Reto namespaces
Reto traits
Reto mensajes y redirección en formularios
Reto cookies
Reto fechas y tiempo
Reto cifrado contraseñas
Reto funciones
Reto estructuras de control
Operadores y expresiones
Autoloading de Clases
Reto cadenas de texto
Reto interfaces
Reto CRUD en PHP
Reto clase Libro
Tutorial para resolver este ejercicio de programación
PHP
Encapsulación
Programación Orientada a Objetos