Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

[SOLUCIONADO] Acerca de Herencia y Overriding de funciones

Estas en el tema de Acerca de Herencia y Overriding de funciones en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Tengo una pregunta, siguiendo el siguiente ejemplo abstract class ClasePadre{ public function setCualquieraCosa(CualquieraInterface $events){ //Hace un poco de cosas } } class ClaseHijo extends ClasePadre{ ...
  #1 (permalink)  
Antiguo 05/05/2013, 14:25
 
Fecha de Ingreso: abril-2013
Mensajes: 5
Antigüedad: 11 años
Puntos: 0
Acerca de Herencia y Overriding de funciones

Tengo una pregunta, siguiendo el siguiente ejemplo

abstract class ClasePadre{
public function setCualquieraCosa(CualquieraInterface $events){
//Hace un poco de cosas
}
}

class ClaseHijo extends ClasePadre{
public function setCualquieraCosa(CualquieraInterface $events){
parent::setCualquieraCosa($events); <---- NO ENTIENDO POR HAY QUE HACER ESTO
//Hace otro poco de cosas
}
}

En varias clases que veo noto que cuando se hace un overriding de un método los parámetros que recibe la clase Hijo se los pasa a el mismo método en la clase Padre. Lo mismo noto bastante en los constructores, en el constructor de la clase Hijo se pasan los parametros a el constructor de la clase Padre.

Por que es esto? es algo que se tiene que hacer? o es simplemente en casos espécificos en donde hay cosas que hace dicho método/constructor en la clase padre que no estamos implementando en el overriding de dicho método/constructor en la clase Hijo?
  #2 (permalink)  
Antiguo 05/05/2013, 16:30
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: Acerca de Herencia y Overriding de funciones

no necesariamente tienes que llamar al método original en la clase base, depende del contexto y básicamente en la arquitectura POO diseñada.

Por ejemplo en algunos FW se te permite reemplazar ciertas funciones para añadir funcionalidad adicional, y aveces hace falta llamar a la función original en la clase base para que funcione correctamente, de otro modo puede no funcionar.

en fin, POO no te obliga a llamar al original de la clase base, depende del diseño o arquitectura de software implementada
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 08/05/2013, 11:14
 
Fecha de Ingreso: abril-2013
Mensajes: 5
Antigüedad: 11 años
Puntos: 0
Respuesta: Acerca de Herencia y Overriding de funciones

Muchas gracias maycolalvarez por tu respuesta, ya me ha quedado claro.

Saludos.

Etiquetas: herencia, oop, php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:59.