Cómo utilizar la herencia en php con la programación orientada a objetos

Video: 1.- PHP Orientado a Objetos - Introducción

Programación orientada a objetos en PHP tiene otra característica que lo hace muy útil para grandes proyectos. Muchos objetos están relacionados entre sí, y se puede utilizar una relación de árbol genealógico para simplificar su programación.

¿Cómo construir una criatura basada en otra criatura

Hay un nuevo cuerpo extraño en la ciudad. Éste tiene las mismas características básicas, pero una actitud peor. Echar un vistazo al código para ver lo que está pasando:

inherit.phplt;? phprequire_once ("Critter.php") -class BitterCritter extiende Critter {// todas las propiedades y métodos heredados de Critter // Se pueden añadir nuevas propiedades y ceño fruncido función methodspublic () {return "$ This-gt; nombre glowers al que sin decir nada."-} // // Glower final si el exceso de escribir un método existente, la charla comportamiento de la función changespublic () {return "¡No es asunto tuyo!"-} // final de la conversación} // fin de la clase def $ a = new BitterCritter () - PRINT $-gt; glower (). "
"-print $ a-gt; hablar (). "
"- gt;

Este ejemplo es una ilustración de una situación muy común de programación, donde desea una especialización de una clase definida previamente. Ya existe una clase tienen Critter, pero que quieren un nuevo tipo de Critter. El nuevo cuerpo extraño (el BitterCritter) Comienza con las mismas características generales de la criatura ordinaria, pero trae un nuevo giro. La idea orientada a objetos de herencia es una manera perfecta para manejar esta situación.

javascript es compatible con una forma diferente de programación orientado a objetos basado en una idea llamada prototipado en lugar de herencia. La gente tiene conversaciones largas y aburridas sobre qué técnica es mejor, pero en última instancia no importa mucho. La mayoría de los lenguajes de programación orientada a objetos soportan la forma de herencia utilizado en PHP, por lo que realmente debe saber cómo funciona.

Cómo heredar el viento (y cualquier otra cosa)

Aquí es cómo implementar la herencia:

Video: CS072 23.c. Herencia de Clases y Objetos en PHP - 3 de 5

  1. Comience con una clase existente.

    Para este ejemplo, se empieza con lo ordinario critter clase, que se importa con el requerir una vez() función.

  2. Crear su nueva clase con el se extiende palabra clave.

    Video: Concepto de Herencia en Programación Orientada a Objetos

    A medida que define la clase, si se utiliza el se extiende palabra clave para indicar qué clase que se hereda, la nueva clase comenzará con todas las propiedades y métodos de la clase padre.

  3. Se puede acceder a los elementos públicos y protegidos de los padres, pero no los privados.

    Si una propiedad o método se definió como privado en la clase original, es realmente asunto de nadie más. No hay otros fragmentos de código pueden acceder a ese elemento. En general, sin embargo, cuando se hereda de una clase, la nueva clase niño debe tener acceso a los elementos de la clase padre. Es por eso que usted debe crear propiedades como protegido en lugar de privado.

  4. Añadir nuevas propiedades y métodos.

    Puede ampliar su nueva clase con propiedades y métodos adicionales que el padre no tenía. los BitterCritter ahora cuenta con una mirar con ceño() método que bichos normales no tienen.

  5. También puede sobrescribir el comportamiento de los padres.

    Si se vuelve a definir un método que tenía la clase padre, va a cambiar el comportamiento de la nueva clase. Esto le permite modificar los comportamientos existentes (una forma de una idea orientada a objetos llamada polimorfismo).

Esta demostración es sólo el más elemental atisbo en la programación orientada a objetos. Hay mucho más a esta forma de desarrollo de software, pero los fundamentos son todos aquí. Aunque puede que no vea inmediatamente la necesidad de construir sus propios objetos a partir de cero, que sin duda se encontrará con código PHP orientado a objetos a medida que comienza la exploración de ideas más complejas como la programación de datos y sistemas de gestión de contenidos.

Artículos Relacionados