- ¿Cuándo debería
implement
oextend
utilizarse? - ¿Cuáles son algunos ejemplos del mundo real?
¿Es esto correcto?
La implementación parece ser una forma de hacer cumplir ciertos métodos en una clase y que las llamadas a funciones de estos métodos están formateadas correctamente. ¿Implementar no es una forma de pasar variables o "configuraciones" a la clase?
Escenario esperado de la vida real: tengo una plataforma de comercio electrónico con múltiples clases de pago que siguen el mismo diseño. Cuando se debe agregar una nueva clase de pago, es muy fácil seguir el diseño definido del interface
para garantizar que todos los bits y piezas estén ahí, desde el principio.
La extensión de clases hace que la clase extendida (¿hijo?) Herede todo de su clase padre, excepto los métodos y variables declarados como private
?
Escenario esperado de la vida real: tengo una clase llamada sessions
con dos clases secundarias llamadas sessioncookies
y databasesessions
. sessioncookies
y databasesessions
, juntos, heredan una serie de opciones de configuración mutuas de sus sesiones principales, lo que facilita el cambio de una opción de configuración para afectar todo tipo de almacenamiento de datos de visitantes eventuales.