En este artículo, conoceremos cómo se implementa la herencia en es6. El JavaScript de ES6 admite componentes de programación orientados a objetos, como objetos, clases y métodos. Además, en Clases, podemos implementar la herencia para hacer que el niño herede todos los métodos de la Clase principal. Esto se puede hacer usando las palabras clave extends y super .
Usamos la palabra clave extends para implementar la herencia en ES6. La clase que se va a ampliar se denomina clase base o clase padre. La clase que amplía la clase base o la clase principal se denomina clase derivada o clase secundaria. El método super() en el constructor se usa para acceder a todas las propiedades y métodos de los padres que usa la clase derivada.
El siguiente ejemplo demostrará el uso de las palabras clave extends y super .
Ejemplo: Vamos a crear una clase Tienda que heredará los métodos de la clase principal «Centro comercial».
HTML
<!DOCTYPE html> <html> <body> <h2>JavaScript Class Inheritance</h2> <p id="demo"></p> <script> class Mall { constructor(shopname) { this.shopname = shopname; } shopispresent() { return this.shopname + ' is present in the '; } } class Shop extends Mall { constructor(name, mallname) { super(name); this.mallname = mallname; } showshop() { return this.shopispresent() + this.mallname; } } let newMall = new Shop( "Domino", "Select City Walk Mall" ); document.getElementById("demo") .innerHTML = newMall.showshop(); </script> </body> </html>
Producción:
Explicación:
- En el ejemplo anterior, la palabra clave super se usa como una «función» que llama a la clase principal Mall con el parámetro pasado a Shop. Este es un paso clave que debe llevarse a cabo para asegurarse de que Shop sea una instancia de Mall .
- Por otro lado, la palabra clave extends se usa para configurar Shop como una subclase o clase secundaria de Mall. El uso de extensiones es imprescindible para establecer una clase como hija de otra clase.