destructor_y_herencia

Páginas: 10 (2439 palabras) Publicado: 31 de enero de 2016
Programacion V

Destructores
Además de constructores, PHP cuenta también con soporte para destructores, a los cuales se
llama cuando se elimina un objeto, se utilizan destructores para hacer la limpieza después de usar
un objeto, cierre de conexiones con las bases de datos o internet. En PHP se llama a los
destructores cuando se destruye explícitamente un objeto o todas las referencias al objetoquedan
fuera del alcance.
Para crear un destructor se utiliza __destruct, a los destructores no se le pasan paramentros)
Ejemplo:
function __destruct()
{
Código del destructor
}
Ejemplo de clase:
echo " ";
class Persona
{
private $name;
function __construct($data)
{
$this->name=$data;
}
public function set_name($data)
{
$this->name=$data;
}
public function get_name()
{
return $this->name;
}function __destruct()
{
echo "Destruyendo ",$this->name, ".
";
}
}
?>

Código de implementación:


<br /> consulta con paramentros<br />



Implementando clases


include ("phpclasspersona.php");
$jose = new persona("jose");
echo "El nombre de su amigo es ",$jose->get_name(),".";
echo "
";
$otro = new persona;$otro->set_name("pedro");
echo "El nombre de su otro amigo es ",$otro->get_name(),".";

?>



Herencia de Clases

La herencia es uno de los mecanismos fundamentales de la programación orientada a objetos.
Por medio de la herencia, se pueden definir clases a partir de la declaración de otras clases. Las
clases que heredan incluyen tanto los métodos como las propiedades de la clase a partir de la
queestán definidos.

Por ejemplo, pensemos en la clase "vehículo". Esta clase general puede incluir las características
generales de todos los vehículos (atributos de la clase), como la matrícula, año de fabricación y
potencia. Además, incluirá algunas funcionalidades (métodos de la clase) como podrían ser,
arrancar() o moverse().

Ahora bien, en la práctica existen varios tipos de vehículos, como loscoches, los autobuses y los

camiones. Todos ellos tienen unas características comunes, que han sido definidas en la clase
vehículo. Además, tendrán una serie de características propias del tipo de vehículo, que, en
principio, no tienen otros tipos de vehículos. Por ejemplo, los camiones pueden tener una carga
máxima permitida o los autobuses un número de plazas disponibles. Del mismo modo, lasclases
más específicas pueden tener unas funcionalidades propias, como los camiones cargar() y
descargar(), o los autobuses aceptar_pasajeros() o vender_billete().

Lo normal en sistemas de herencia es que las clases que heredan de otras incluyan nuevas
características y funcionalidades, aparte de los atributos y métodos heredados. Pero esto no es
imprescindible, de modo que se pueden crear objetosque hereden de otros y no incluyan nada
nuevo.

Sintaxis de herencia en PHP 5

La programación orientada a objetos nos ofrece una serie de mecanismos para definir este tipo
de estructuras, de modo que se puedan crear jerarquías de objetos que heredan unos de otros.
Veremos ahora cómo definir estas estructuras de herencia en PHP 5. Para ello, continuando con
nuestro ejemplo de video club, vamos acrear los distintos tipos de elementos que se ofrecen en
alquiler.

Como todo el mundo conoce, los video clubs ofrecen distintos tipos de elementos para alquiler,
como pueden ser las películas (cintas de vídeo o DVD) y los juegos. Cada elemento tiene unas
características propias y algunas comunes. Hemos llamado "soporte" a la clase general, que
incluye las características comunes para todos los tiposde elementos en alquiler. Luego hemos
creado tres tipos de soportes distintos, que heredan de la clase soporte, pero que incluyen
algunas características y funcionalidades nuevas. Estos tipos de soporte serán "cinta_video",
"dvd" y "juego".

El esquema de herencia que vamos a realizar en este ejemplo se puede ver en la siguiente
imagen.

Empezamos por la clase soporte. Su código será el...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS