DocumentX Logo
DocumentX.
Ctrl+K
TypeScript/Conceptos

Clases

Las clases son plantillas que agrupan propiedades y métodos bajo un mismo nombre para crear objetos a partir de ellas.

Sintaxis Básica

Clase Estándar

typescriptclass Usuario {}

Clase Abstracta (abstract)

No se puede instanciar directamente con new. Sirve únicamente como base para ser extendida por otras clases.

typescriptabstract class Usuario {}

Clase Exportada (export / export default)

Utilizada para organizar el código en módulos y poder importarla en otros archivos.

typescriptexport class Usuario {}

// O como exportación por defecto
export default class Usuario {}

Clase Declarada (declare)

Se usa en TypeScript (habitualmente en archivos .d.ts) para decirle al compilador "esta clase existe en el entorno global o en una librería JavaScript externa, no generes código de ella".

typescriptdeclare class Usuario {}

Expresiones de Clase (Asignadas a variables)

En lugar de declararla formalmente, la asignas como un valor a una constante o variable:

typescript// Expresión anónima
const Usuario = class {};

// Expresión exportada
export const Usuario = class {};

Clases que Heredan o Implementan Contratos

El encabezado también cambia cuando se relaciona con otras estructuras de POO:

typescript// Hereda de otra clase
class Usuario extends Persona {}

// Cumple un contrato definido por una interfaz
class Usuario implements iUsuario {
    constructor(public nombre: string) {}
}

// Combina ambas
class Usuario extends Persona implements iUsuario {
    constructor(public nombre: string) {
        super(nombre);
    }
}