Método abstracto en TypeScript

Rana Hasnain Khan 18 agosto 2022
Método abstracto en TypeScript

Presentaremos qué es un método abstracto en TypeScript con ejemplos. También presentaremos una clase abstracta en TypeScript con ejemplos.

Método abstracto en TypeScript

Cuando trabajamos en aplicaciones comerciales, necesitamos definir algún comportamiento o funcionalidad común que luego pueda usarse para múltiples propósitos; para este propósito, TypeScript viene con una característica conocida como resumen. Podemos definir clases usando esta palabra clave y comportamientos comunes usando métodos abstractos dentro de clases abstractas.

La palabra abstract se usa principalmente para clases en TypeScript. Cuando queremos definir un comportamiento común en una clase de la que se pueden derivar más clases, se le conoce como clase abstracta.

La palabra clave abstract se utiliza para definir una clase abstracta.

Cada clase abstracta consta de uno o más métodos abstractos definidos con la palabra clave abstract. Los métodos abstractos son los métodos que transfieren la funcionalidad común a las clases derivadas.

Las clases derivadas deben definir todos los métodos abstractos definidos en la clase principal.

Veamos un ejemplo en el que crearemos una clase abstracta con un método abstracto, como se muestra a continuación.

# TypeScript
abstract class Course {
    courseName: string;

    constructor(courseName: string) {
        this.courseName = Typescript;
    }

    abstract search(string): Course;
}

Como puede ver en el ejemplo anterior, creamos una clase abstracta Course en la que definimos un método abstracto search. Derivaremos otra clase de esta clase y usemos sus métodos, como se muestra a continuación.

# TypeScript
abstract class Course {
    courseName: string;

    constructor(courseName: string) {
        this.courseName = courseName;
    }
    abstract search(string): Course;
}

class Subject extends Course {
    subCode: number;

    constructor(courseName: string, subCode: number) {
        super(courseName);
        this.subCode = subCode;
    }

    search(courseName:string): Course {
        return new Subject(courseName, 1);
    }
}

let sub: Course = new Subject("Typescript", 101);

let sub2: Course = sub.search('Javascript');

De esta forma, podemos usar el método abstracto dentro de las clases derivadas.

Rana Hasnain Khan avatar Rana Hasnain Khan avatar

Rana is a computer science graduate passionate about helping people to build and diagnose scalable web application problems and problems developers face across the full-stack.

LinkedIn