Qué es la Herencia en PHP y como implementarla
Qué es la Herencia en PHP y como implementarla
Como su nombre indica el concepto de herencia se aplica cuando creamos una clase, que va a heredar los métodos y atributos de una ya definida, entonces la clase que hemos creado es una subclase. Para que una clase sea subclase de otra ya creada deberemos usar la palabra reservada extends en el siguiente código podremos ver como creamos una clase llamada SubClaseA que heredará los métodos y atributos de una clase definida con anterioridad llamada ClaseA.
class SubClaseA extends ClaseA { var $atributo2; function operacion2() { } }
Tenemos la clase ClaseA que es definida de la siguiente forma:
Class ClaseA { var $atributo1; function operacion1(){ } }
Si creamos un objeto de la clase SubClaseA este heredará todos los métodos de la clase ClaseA, por lo tanto el siguiente código es válido:
$x = new SubClaseA(); $x->operacion1(); $x->atributo1 = 100; $x->operacion2(); $x->atributo2 = 200;
Como podemos observar aunque declaremos un objeto de la clase SubClaseA, al ser una clase extendida de ClaseA podemos hacer uso de todos los métodos y atributos definidos en ClaseA como si estuvieran contenidos en SubClaseA.
Debemos tener en cuenta que la herencia solo trabaja en una dirección, la subclase o clase hija hereda las características de su clase padre o superclase, pero la clase padre no posee las características de la hija. Para el caso anterior ClaseA no tendría atributo2 ni metodo2();
Ejercicio # 1 |
Ejercicio # 2 |
<?php class cuadrado { // Estos son ATRIBUTOS de los objetos var $num=10; // Este es el METODO para calcular function calcularCuadrado() { return ($this->num * $this->num); } } // Creamos el Objeto $objeto = new cuadrado(); //Asignamos un atributo //$objeto->num = 3; // Invocamos un método echo $objeto->calcularCuadrado(); ?>
|
<?php class imagen { // Estos son ATRIBUTOS de los objetos var $src; var $border; // Esta función es el CONSTRUCTOR function imagen($src,$border) { $this->src=$src; $this->border=$border; } // Esta función es un METODO function Imprimir() { echo ” <img src=”; echo $this->src; echo ” border=”; echo $this->border; echo ” >”; } } // Creamos el Objeto $logo = new Imagen(“imagen/msn2.jpg”,8); // Invocamos el método $logo->Imprimir(); ?> |
Si quieres seguir aprendiendo con nosotros, puedes ingresar a nuestros