CodeAventura
TypeScript
▸Interfaces y tipos compuestos▸Extender interfaces y tipos

Misión

Editor
Consola
La consola está vacía. Pulsa EJECUTAR para correr tu código.
13 / 24Extender interfaces y tipos
Anterior

Extender interfaces y tipos

Herencia de interfaces con extends

Las interfaces pueden heredar de otras interfaces con extends:

Perro hereda nombre y edad de Animal, y añade raza y ladrar. No necesitas repetir las propiedades del padre.

Extender múltiples interfaces

Una interface puede heredar de varias interfaces a la vez:

Empleado tiene todas las propiedades de Persona + Contacto + las suyas propias. Composición limpia y reutilizable.

Intersection types con &

Con type, logras lo mismo usando el operador &:

& fusiona los tipos. El resultado tiene todas las propiedades de todos los tipos combinados.

extends vs &

Son casi equivalentes, pero tienen diferencias:

extends&
Sintaxisinterface A extends Btype A = B & C
ConflictosDa error claroCrea tipo never silencioso
LegibilidadMás clara para herenciaMás flexible

Para herencia de objetos, extends suele dar mejores errores.

Composición: tipos como LEGO

La clave es pensar en tipos pequeños y componerlos:

ConID y ConTimestamps son piezas reutilizables. Cualquier entidad que necesite un ID o timestamps puede heredarlos sin repetir código.

Tu desafío 🚀

  1. Ya tienes interface Persona definida con nombre y edad
  2. Crea una interface Contacto con teléfono (string) y email (string)
  3. Crea una interface Empleado que extienda ambas y añada puesto (string) y salario (number)
  4. Crea un empleado e imprímelo

Extender interfaces es como construir con LEGO: piezas pequeñas que se combinan en estructuras complejas. Reutiliza, no repitas.