MANUAL 
          DE PHP. Parte 2. OBJETOS/AGREGADO
        Hola amigos, ¿cómo están?
        Tal y como lo prometimos en nuestra entrega anterior, vamos a ver ahora 
          lo que en Programación orientada a objetos se conoce como Agregado. 
          Es muy probable que el Agregado se parezca mucho a 
          la Herencia, sin embargo, es necesario aclarar la diferencia 
          enorme que existe.
        Cuando hablamos de Herencia, significa que una subclase 
          Hereda los atributos y los métodos de la superclase, siendo que 
          todos tienen algo en común; sin embargo el Agregado es 
          la agrupación de una serie de objetos que no han de tener nada 
          en común, pero que necesitan estar juntos por alguna razón. 
        
        Para poner un ejemplo de ello pensemos en una selva, la selva está 
          llena de animales, sin embargo, eso no significa que selva, como tal 
          tenga algo en común con los animales (además pensemos 
          en el hecho de que en la selva también hay plantas, rocas, cazadores, 
          taladores,… momento, no sigamos o lloraremos)
        Sin embargo, la mejor forma de entender el Agregado 
          es con un ejemplo, primero que nada, modifiquemos de manera un tanto 
          dramática nuestro código y escribámoslo de la siguiente 
          forma:
        <?php
         
           class canimal{
           
             function canimal($patas){
             
               $this->patas = $patas;
            
             }
             function sonido(){
             
               echo "Este animal Ladra";
            
             }
          
           var $ojos = 2;
           }
           class cperros extends canimal{}
           class cgatos extends canimal{
           
             function sonido(){
             
               echo "En realidad este animal 
                maúlla";
            
             }
          
           }
          class ccasa{
           var $animal = array();
           function naciendo($tipo, $cantidad){
           
             $cantidad = count($this->animal);
             $this->animal[$cantidad] = $tipo;
          
           }
           function mostrar_animales(){
           
             echo "Hay ".count($this->animal)." 
              animales en la casa<BR>";
             for($i=0;$i<count($this->animal);$i++){
             
               echo $this->animal[$i]."<BR>";
               }
            
             }
          
           }
          $nuevo = new ccasa();
           $nuevo->naciendo(cgatos, 1);
           $nuevo->naciendo(cperros, 1);
           $nuevo->mostrar_animales();
        
         ?>
        Tenemos ahora, además de la superclase y las dos subclases originales, 
          una clase extra que se llama ccasa, en la que “inmiscuimos” 
          a las dos clases cgatos y cperros, 
          de tal manera que las criaturas que nacen dentro de la casa, sean, precisamente, 
          nuestras dos subclases, gracias a la variable $tipo, que recoge a las 
          subclases.
        La nueva clase (que no hereda de nadie, pero que incluye a las dos 
          suclases, derivadas de canimales) tiene dos funciones, una que se ocupa 
          del nacimiento de las nuevas “criaturitas” y la otra que 
          muestra la cantidad de animales que tenemos. Nuestro resultado es el 
          siguiente:
        
           [Objeto Flash Eliminado]
          
        Una pequeña tarea: ¿cómo enviarían a la 
          pantalla la función sonido() de las dos subclases?
        Con esto, queridísimos amigos, cubrimos lo básico de 
          la programación orientada a objetos (POO). Sin embargo, hay que 
          decir que se puede hacer código muy bueno y respetable, incluso 
          sin la necesidad de la programación orientada a objetos (y si 
          no que lo digan los programadores de C).
        De momento, nos despedimos diciendo: Disfruten de lo que hacen, tanto 
          que se convierta, no en un trabajo, sino en una diversión. Hasta 
          Pronto.