[Php-avanzado] Consulta PHP, Nicolas Mozo.
Leonardo Tadei - Pegasus Tech Supply
leonardot en pegasusnet.com.ar
Dom Nov 2 10:08:38 ART 2014
Hola Nicolás,
estás usando mal el concepto de interfaces y los estás mezclando con el
de herencia.
La interfaz define un protocolo es es obligatorio implementar en las
clases que implementen dicha interfaz. Como la interfaz define
protocolo, sus métodos no tienen que tener implementación, y por esto no
hay herencia.
La idea de implementar una interfaz es, justamente, implementar el
protocolo que implementa tal cual está; por esto es imposible redefinir
method1(), ya que si pudieras, estarías violando el principio de que
todas las clases que implementan la interfaz tengan el mismo protocolo.
Si necesitás cambiar una interfaz en una clase, es porque el software
está mal diseñado o porque tu implementación está ignorando principios
básicos del paradigma de la POO.
Tal vez si nos contaras el problema en cuestión, podríamos aportar algo
más o una posible solución al problema...
Saludos!
El sáb, 01-11-2014 a las 22:04 -0300, Nicolas Mozo escribió:
> Buenas noches Leonardo, como anda tanto tiempo?. Estoy trabajando en
> un sistema para una empresa, y justo me toco programarlo en PHP, mi
> consulta es la siguiente:
>
>
> Se puede sobreescribir un metodo, dentro de una clase, implementado
> desde una interface?. Intente de todas las maneras posibles, se que
> para sobreescribir un metodo se usa la palabra clave "parent::" para
> acceder al metodo de la clase base, pero yo lo heredo de una interface
> no de una clase.
>
>
> DEMOSTRACION:
>
>
> interface miInterfaz{
>
>
> public function method1( $valor1, $valor2 );
>
>
> }
>
>
> class miClase implements miInterfaz{
>
>
> public function method1( $valor1, $valor2 ){
> //CODIGO
> }
> }
> class miClase2 implements miInterfaz{
>
>
> public function method1( $valor1, $valor2, $valor3 (ESTE
> VALOR NECESITO AGREGARLE AL METODO) ){
> //CODIGO
> }
> }
>
>
> Disculpe las molestias Leonardo, saludos cordiales. Atte. Nicolas
> Mozo.
>
>
>
>
>
>
> _______________________________________________
> Lista de correo: Php-avanzado
> Mensajes a la lista: Php-avanzado en pato2.fi.mdp.edu.ar
> Administración Web: http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> Desubscripción: php-avanzado-request en pato2.fi.mdp.edu.ar?subject=unsubscribe
--
Leonardo Tadei
leonardot en pegasusnet.com.ar
Web: http://leonardo.tadei.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
Más información sobre la lista de distribución Php-avanzado