Classes, Abstract Classes (clases abstractas) Classes, Abstract Classes (clases abstractas)

đŸ„‡ Classes, Abstract Classes (clases abstractas)

Las clases, métodos y propiedades pueden ser declaradas como abtract (abstractas) en TypeScript.

Un mĂ©todo y/o una propiedad abstracta es un mĂ©todo que no ha sido implementado. Cuando una clase no tiene ningĂșn mĂ©todo abstracto, se le conoce como concrete (concreta).

No es posible instanciar una clase abstracta, como se ve en el siguiente ejemplo.

abstract class Base {
  abstract getNombre(): string;

  imprimirNombre() {
    console.log(`Mi nombre es ${this.getNombre()}`);
  }
}

const miInstancia = new Base(); // <- esta lĂ­nea generara un error pues
                                // no se puede instancear una clase abstracta

Pero si es posible instanciar aquellas que la implementan.

abstract class Base {
  abstract getNombre(): string;

  imprimirNombre() {
    console.log(`Mi nombre es ${this.getNombre()}`);
  }
}

class Derivada extends Base {
  getNombre(): string {
    return "Laura";
  }
}

const miInstancia = new Derivada();
miInstancia.imprimirNombre();
Mi nombre es Laura

Si no implementamos alguno de los métodos abstractos de una clase abstracta, esto generarå un error en el compilador.

Classes, Class Expressions (clases como expresiones) Classes, Relationships (relaciones entre clases)
comments powered by Disqus