Ver Mensaje Individual
  #12 (permalink)  
Antiguo 04/03/2013, 18:40
Avatar de portalmana
portalmana
 
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 17 años, 2 meses
Puntos: 80
Respuesta: Sobrecarga en PHP POO

Código PHP:
Ver original
  1. <?php
  2. // Ejemplo Clasico de Polimorfismo en cualquier lenguaje
  3.  
  4.  
  5. abstract class Figura
  6. {
  7.     abstract public function area();
  8.     abstract public function perimetro();
  9. }
  10.  
  11. class Cuadrado extends Figura
  12. {
  13.     public function area()
  14.     {
  15.         echo 'Area de un Cuadrado<br>';
  16.     }
  17.    
  18.     public function perimetro()
  19.     {
  20.         echo 'Perimetro de un Cuadrado<br>' ;
  21.     }
  22. }
  23.  
  24. class Circulo extends Figura
  25. {
  26.     public function area()
  27.     {
  28.         echo 'Area de un Circulo<br>';
  29.     }
  30.    
  31.     public function perimetro()
  32.     {
  33.         echo 'Perimetro de un Circulo<br>' ;
  34.     }      
  35. }
  36.  
  37.  
  38. class Geometria
  39. {
  40.    
  41.     private $_figura;
  42.    
  43.     public function __construct(Figura $figura)
  44.     {
  45.         $this->_figura = $figura;
  46.     }
  47.    
  48.     public function calcular()
  49.     {
  50.         $this->_figura->area();
  51.         $this->_figura->perimetro();
  52.     }
  53. }
  54.  
  55. $calc = new Geometria(new Circulo());
  56. $calc->calcular();
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no" -- A.Einstein
objetivophp.com,twitter.com/objetivophp