ExpertiDict

TypeScript · Essencial · Português · Técnico

herança de interface

/eˈɾɐ̃sɐ dʒi ĩteɾˈfejsi/substantivo feminino

Uso de extends em uma interface para herdar as propriedades de outra, ou de várias, acrescentando ou refinando membros. Modela relações 'é um' entre formas de objeto.

Onde usar

Aparece ao compor modelos: interface Admin extends Usuario. Se o filho redefinir uma propriedade com tipo incompatível com o do pai, o compilador acusa erro na própria declaração, o que protege a relação.

Em código

interface Animal { nome: string }
interface Chip { id: number }
interface Cao extends Animal, Chip {
  raca: string;
}
const rex: Cao = {
  nome: 'Rex', id: 1, raca: 'SRD',
};

Exemplos

Admin estende Usuario por herança de interface e só acrescenta as permissões.

O compilador reclamou porque o filho redefiniu a propriedade com um tipo incompatível.

Cuidado

Não confunda extends de interface com implements de classe: extends combina formas de tipo, enquanto implements só verifica que a classe cumpre um contrato.

Sinônimos

interface extends

Veja também

Todos os termos de TypeScript