Moștenirea clasei JavaScript

În acest tutorial, veți afla despre moștenirea clasei JavaScript cu ajutorul exemplelor.

Moștenirea clasei

Moștenirea vă permite să definiți o clasă care preia toate funcționalitățile dintr-o clasă părinte și vă permite să adăugați mai multe.

Folosind moștenirea clasei, o clasă poate moșteni toate metodele și proprietățile altei clase.

Moștenirea este o caracteristică utilă care permite reutilizarea codului.

Pentru a utiliza moștenirea clasei, utilizați extendscuvântul cheie. De exemplu,

 // parent class class Person ( constructor(name) ( this.name = name; ) greet() ( console.log(`Hello $(this.name)`); ) ) // inheriting parent class class Student extends Person ( ) let student1 = new Student('Jack'); student1.greet();

Ieșire

 Salut Jack

În exemplul de mai sus, Studentclasa moștenește toate metodele și proprietățile Personclasei. Prin urmare, Studentclasa va avea acum nameproprietatea și greet()metoda.

Apoi, am accesat greet()metoda Studentclasei prin crearea unui student1obiect.

Cuvânt cheie JavaScript super ()

Cuvântul supercheie utilizat în cadrul unei clase copil denotă clasa părinte. De exemplu,

 // parent class class Person ( constructor(name) ( this.name = name; ) greet() ( console.log(`Hello $(this.name)`); ) ) // inheriting parent class class Student extends Person ( constructor(name) ( console.log("Creating student class"); // call the super class constructor and pass in the name parameter super(name); ) ) let student1 = new Student('Jack'); student1.greet();

Aici, clasa din superinterior Studentse referă la Personclasă. Prin urmare, atunci când Studenteste apelat constructorul clasei, apelează și constructorul Personclasei care îi atribuie o proprietate de nume.

Metoda sau proprietatea suprascriere

Dacă o clasă copil are aceeași metodă sau nume de proprietate ca cea a clasei părinte, va folosi metoda și proprietatea clasei copil. Acest concept se numește metoda suprasolicitării. De exemplu,

 // parent class class Person ( constructor(name) ( this.name = name; this.occupation = "unemployed"; ) greet() ( console.log(`Hello $(this.name).`); ) ) // inheriting parent class class Student extends Person ( constructor(name) ( // call the super class constructor and pass in the name parameter super(name); // Overriding an occupation property this.occupation = 'Student'; ) // overriding Person's method greet() ( console.log(`Hello student $(this.name).`); console.log('occupation: ' + this.occupation); ) ) let p = new Student('Jack'); p.greet();

Ieșire

Salut student Jack. ocupatie: Student

Aici, occupationproprietatea și greet()metoda sunt prezente în Personclasa părinte și Studentclasa copil . Prin urmare, Studentclasa suprascrie occupationproprietatea și greet()metoda.

Utilizări ale moștenirii

  • Deoarece o clasă copil poate moșteni toate funcționalitățile clasei părintelui, acest lucru permite reutilizarea codului.
  • Odată ce o funcționalitate este dezvoltată, o puteți moșteni pur și simplu. Nu este nevoie să reinventăm roata. Acest lucru permite un cod mai curat și mai ușor de întreținut.
  • Deoarece puteți adăuga propriile funcționalități în clasa copil, puteți moșteni doar funcționalitățile utile și defini alte caracteristici necesare.

Articole interesante...