0Pricing
PHP Academy · Lección

Herencia

Reutilice código y amplíe funcionalidades mediante la herencia

Herencia es una lección gratuita de PHP Academy en CoddyKit. Esta es la lección 3 de 5. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de PHP Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de PHP Academy incluye 5 lecciones en total.

Herencia en PHP

Herencia en PHP

¡Le damos la bienvenida a la próxima lección! En esta lección, aprenderá sobre la herencia, un concepto fundamental de la programación orientada a objetos (POO) que permite ampliar la funcionalidad de una clase. ¡Comencemos!

Herencia — ilustración 1

¿Qué es la herencia?

¿Qué es la herencia?

La herencia es un mecanismo de la POO que permite que una clase (clase hija) herede propiedades y métodos de otra clase (clase padre). Esto fomenta la reutilización del código y establece una jerarquía en la programación.

Ejemplo: Una clase Car puede servir como clase padre de las clases Sedan y SUV.

Definición de la herencia

Definición de la herencia

Utilice la palabra clave extends para crear una clase hija que herede de una clase padre. Ejemplo:

Consejo: Utilice la herencia para evitar duplicar código.

<h2>Defining Inheritance</h2>
<p>Use the <code>extends</code> keyword to create a child class that inherits from a parent class. Example:</p>

Sobrescritura de métodos

Sobrescritura de métodos

Las clases hijas pueden sobrescribir los métodos de la clase padre para proporcionar una funcionalidad específica. Ejemplo:

<?php
  class Vehicle {
    public function drive() {
      echo "Driving a generic vehicle.";
    }
  }

  class Car extends Vehicle {
    public function drive() {
      echo "Driving a car.";
    }
  }

  $car = new Car();
  $car->drive(); // Outputs: Driving a car.
?>

La palabra clave parent

La palabra clave parent

Utilice la palabra clave parent para llamar a un método de la clase padre dentro de un método sobrescrito. Ejemplo:

<?php
  class Vehicle {
    public function start() {
      echo "Starting the vehicle.";
    }
  }

  class Car extends Vehicle {
    public function start() {
      parent::start();
      echo " Starting the car engine.";
    }
  }

  $car = new Car();
  $car->start(); // Outputs: Starting the vehicle. Starting the car engine.
?>

Ventajas de la herencia

Ventajas de la herencia

La herencia ofrece las siguientes ventajas:

  • Fomenta la reutilización del código.
  • Establece una jerarquía de clases clara.
  • Permite el polimorfismo al permitir que las clases hijas sobrescriban métodos.

Miembros protegidos

Miembros protegidos

La herencia también funciona con miembros protegidos. Las propiedades y los métodos protegidos son accesibles para las clases hijas, pero no fuera de la jerarquía de clases. Ejemplo:

Punto clave: Utilice protected para compartir miembros entre las clases padre e hija de forma segura.

<?php
  class Vehicle {
    protected $fuel;

    public function setFuel($fuel) {
      $this->fuel = $fuel;
    }
  }

  class Car extends Vehicle {
    public function getFuel() {
      return $this->fuel;
    }
  }

  $car = new Car();
  $car->setFuel("Gasoline");
  echo "Fuel: " . $car->getFuel(); // Outputs: Fuel: Gasoline
?>

Clases abstractas

Clases abstractas

Una clase abstracta proporciona una estructura base para las clases hijas, pero no se puede instanciar directamente. Ejemplo:

Punto clave: Utilice clases abstractas cuando desee exigir determinados métodos en las clases hijas.

<?php
  abstract class Vehicle {
    abstract public function start();
  }

  class Car extends Vehicle {
    public function start() {
      echo "Starting the car engine.";
    }
  }

  $car = new Car();
  $car->start(); // Outputs: Starting the car engine.
?>

Palabra clave final

Palabra clave final

La palabra clave final impide que se produzca más herencia o sobrescritura. Ejemplo:

Consejo: Utilice final para proteger métodos o clases e impedir que se extiendan.

<?php
  class Vehicle {
    final public function start() {
      echo "Starting the vehicle.";
    }
  }

  class Car extends Vehicle {
    // Cannot override the start method
  }
?>

¡Excelente trabajo!

¡Excelente trabajo!

¡Felicidades! Ha aprendido sobre la herencia en PHP, incluido cómo extender clases, sobrescribir métodos y utilizar clases abstractas. En la próxima lección, exploraremos la encapsulación y los modificadores de acceso. ¡Sigamos programando!

Herencia — ilustración 11

Preguntas frecuentes

¿La lección «Herencia» es gratis?

Sí — el texto completo de «Herencia» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de PHP Academy, actualiza a CoddyKit PRO. El curso de PHP Academy incluye 5 lecciones en total.

¿Qué aprenderé en «Herencia»?

Reutilice código y amplíe funcionalidades mediante la herencia Practicas PHP Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar PHP Academy?

No se requiere experiencia previa. PHP Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 5.

¿Cuánto tiempo toma la lección «Herencia»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de PHP Academy?

Sí. Cada lección de PHP Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Introducción a la POO en PHP
  2. Definir clases y objetos
  3. Herencia
  4. Encapsulación y modificadores de acceso
  5. Polimorfismo
← Volver a PHP Academy