Anulación de métodos en TypeScript

En este artículo, comprenderemos algunos de los detalles necesarios asociados con la anulación de métodos; además, veremos cómo implementar la anulación de métodos en TypeScript .

Anulación de método:

  • La anulación de métodos es el proceso en el que un método que pertenece a la clase base (o padre) es anulado por el mismo método (mismo método y firma) de la clase derivada (hija).
  • En este proceso, un método de clase hijo (derivado) puede o no usar la lógica definida en el método de clase padre (base).
  • Para invocar los métodos o propiedades de la clase base, podemos usar la palabra clave super que nos ayudaría a invocar ese método o propiedad particular de la clase base en la clase secundaria.
  • La anulación de métodos es útil cuando queremos modificar el comportamiento de cualquier método de la clase principal en la clase secundaria.

Después de analizar todos los hechos básicos asociados con la anulación de métodos en TypeScript, veamos ahora cómo podríamos implementar la anulación de métodos en TypeScript con algunos de los siguientes ejemplos ilustrados.

Ejemplo 1: en este ejemplo, declararemos dos clases y dentro de la clase principal declararemos un método que será anulado por la clase secundaria con su propia lógica.

Javascript

class Boy {
    name : string
    about() : void {
        console.log(this.name +" is an intelligent boy..")
    }
}
   
class Student extends Boy {
    rollnumber : number;
    marks: number;
    constructor(rollnumber : number, marks : number, 
    name1 : string){
        super(); 
        this.rollnumber = rollnumber
        this.name = name1
        this.marks = marks
    }
    displayStudentInformation() : void {
        console.log("Name : "+ this.name +", Roll Number : " + 
        this.rollnumber +", 
        Scores : " + this.marks + " out of 100" )
    }
    about() : void{
        console.log(this.name + " scores well...")
    }
} 
  
let student = new Student(2, 96, "Rohit");
student.displayStudentInformation();
student.about();

Producción:

Name : Rohit, Roll Number : 2, Scores : 96 out of 100
Rohit scores well...

Ejemplo 2: En este ejemplo, mostraremos el resultado del método de la clase principal también dentro del método de la clase principal anulada de la clase secundaria usando la palabra clave super .

Javascript

class Boy {
    name : string
    about() : void {
        console.log(this.name +" is an intelligent boy..")
    }
}
   
class Student extends Boy {
    rollnumber : number;
    marks: number;
    constructor(rollnumber : number, marks : number, 
    name1 : string){
        super(); 
        this.rollnumber = rollnumber
        this.name = name1
        this.marks = marks
    }
    displayStudentInformation() : void {
        console.log("Name : "+ this.name +", Roll Number : " + 
        this.rollnumber +", 
        Scores : " + this.marks + " out of 100" )
    }
    about() : void {
        // Invokes parent class about() method here also.
        super.about(); 
        console.log(this.name + " scores well...")
    }
} 
  
let student = new Student(2, 96, "Rohit");
student.displayStudentInformation();
student.about();

Producción:

Name : Rohit, Roll Number : 2, Scores : 96 out of 100
Rohit is an intelligent boy..
Rohit scores well...

Referencia: https://www.typescriptlang.org/docs/handbook/release-notes/typescript-4-3.html#override-and-the—noimplicitoverride-flag

Publicación traducida automáticamente

Artículo escrito por amansingla 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 *