¿Cómo implementar la herencia en TypeScript?

La herencia es un pilar importante de los lenguajes de programación orientados a objetos y la herencia se utiliza para crear una nueva clase a partir de la existente. La clase recién creada se conoce como clase Derivada y la clase de la que se heredó la clase derivada se conoce como clase Base. Una clase derivada heredada adquiere las propiedades y comportamientos de la clase base. TypeScript admite herencia única y herencia multinivel. No podemos implementar herencias híbridas y múltiples usando TypeScript. La herencia usa herencia basada en clases y se puede implementar usando palabras clave extendidas en TypeScript. En este artículo, veremos cómo se implementa la herencia en TypeScript.

Sintaxis:

class baseClassName {
}
class derivedClassName extends baseClassName {
}

Herencia única en TypeScript: en la herencia única, las propiedades y el comportamiento de la clase base se pueden heredar como máximo en una clase derivada. Solía ​​agregar nueva funcionalidad a la clase ya implementada.

Ejemplo: En este ejemplo, estamos creando una Persona como clase base y usando herencia única implementando Profesor como una clase Derivada. 

Javascript

// Base class
class Person {
  Name: string;
  constructor(name: string) {
    this.Name = name;
  }
}
// Deriving Teacher class
class Teacher extends Person {
  Payment: number;
  constructor(name: string, payment: number) {
    super(name);
    this.Payment = payment;
  }
  display(): void {
    console.log("Teacher's Name: " + this.Name);
    console.log("Teacher's Payment " + this.Payment);
  }
}
// Create Object
let obj = new Teacher("GeeksforGeeks", 8500000);
obj.display();

Producción:

Teacher's Name: GeeksforGeeks 
Teacher's Payment 8500000

2. Herencia multinivel:

En la herencia multinivel, la clase derivada actúa como clase base para otra clase derivada. La clase derivada recién creada adquiere las propiedades y el comportamiento de otras clases base.

Ejemplo: en este ejemplo, estamos creando un vehículo como clase base y un automóvil como una subclase que deriva de la nueva clase llamada modelo de automóvil y la clase modelo de automóvil adquiere todas las características del vehículo y la clase de automóvil.

Javascript

// Base class
class Vehicle {
  Type(): void {
    console.log("Car");
  }
}
  
// Inherites from Vehicle
class Car extends Vehicle {
  Brand(): void {
    console.log("ABC");
  }
}
  
// Inherites all properties of 
// Vehicle and Car class
class carModel extends Car {
  Model(): void {
    console.log("ABC2021");
  }
}
  
// Object creation
let obj = new carModel();
obj.Type();
obj.Brand();
obj.Model();

Producción:

Car  
ABC
ABC2021

Publicación traducida automáticamente

Artículo escrito por abhijitmahajan772 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *