Índice

Tema 1: Aplicando herencia en lenguaje Java y PHP

Volver al inicio

Tema 2: Aplicando herencia en lenguaje Python y JavaScript

En el caso de Python para definir la herencia entre clases primero hay que importar la súper clase.

from car import Car # car → el nombre del archivo que contiene la Clase pero sin extención. Car → El nombre de la Clase que se quiere importar.

Luego se define la herencia usando la siguiente sintaxis:

class UberX(Car): #UberX → (Sub Clase) La clase sobre la que se va a aplicar la herencia. Car → (Súper Clase) La Clase que se va a heredar.

Después se crea el método constructor con los parámetros requeridos para crear el objeto, incluidos los parámetros de la súper Clase. Luego se usa super para acceder al Método Constructor de la súper Clase y finalmente con self se acceden a los atributos de sub Clase para asignarles el valor que se pase por parámetro en el método constructor.

def __init__(self, license, driver, brand, model): # Método Constructor con los parámetros para crear el objeto
    super.__init__(license, driver)
    self.brand = brand
    self.model = model

Nota: si al ejecutar el programa aparece un mensaje de error como este: __int__ requires a super object but received a str  hay que hacer el siguiente cambio al acceder al constructor de la súper Clase:

super(UberX, self).__init__(license, driver)

En el caso de JavaScript, si se usa la nueva sintaxis que ofrece EcmaScript 6 se usa extends para definir la herencia. Luego se crea el constructor y se definen los atributos para crear el objeto.

class UberX extends Car {
    constructor(license, driver, brand, model) {
        this.brand = brand;
        this.model = model;
    }
}

Para crear una instancia de un objeto hay que asegurarse de tener el archivo con la súper Clase vinculado en el HTML, después se crea una instancia del objeto en JavaScript con la siguiente sintaxis:

var uberX = new UberX("SXC53", new Account("Felipe Molina", "UISD6JASD6T832"), "Ford", "Focus")