Nas aulas anteriores, aprendemos a criar classes, usar construtores, métodos e entender o this.

Agora vamos ver como uma classe pode herdar características de outra.

🎯 Objetivo da aula

Ao final desta aula, você será capaz de:

  • Entender o que é herança
  • Usar extends e super
  • Reaproveitar código corretamente
  • Evitar armadilhas comuns
  • Saber quando herança não é a melhor escolha

O que é herança?

Herança é um mecanismo que permite:

  • uma classe herdar propriedades
  • e métodos de outra classe

A classe base é chamada de classe pai (ou superclasse).

A classe que herda é chamada de classe filha (ou subclasse).

Exemplo simples de herança

 
class Usuario { constructor(nome, email) 
{ this.nome = nome; this.email = email; }
  apresentar() {
    console.log(Olá, meu nome é ${this.nome});
  }
}

class Admin extends Usuario 
{
  constructor(nome, email) {
    super(nome, email);
  }

excluirUsuario() 
  {
    console.log("Usuário excluído");
  }
}

const admin = new Admin("Daniel", "admin@email.com");
admin.apresentar(); // Saída será: Olá, meu nome é Daniel
admin.excluirUsuario(); // Saída será: Usuário excluído

O papel do extends

A palavra-chave extends indica que:

  • Admin herda de Usuario
  • todos os métodos públicos ficam disponíveis

O papel do super

Dentro da classe filha:

  • super() chama o constructor da classe pai
  • é obrigatório antes de usar this
Em classes filhas, você deve chamar super() antes de acessar this.

Por que isso funciona?

Por baixo dos panos:

  • JavaScript continua usando protótipos
  • A cadeia de protótipos é estendida
  • Não há cópia de métodos
Herança em classes é apenas sintaxe sobre protótipos.

Sobrescrevendo métodos

Uma classe filha pode redefinir um método da classe pai.

 
  class Admin extends Usuario { apresentar() 
  { 
    console.log(`Sou admin: ${this.nome}`); 
  } 
}
const admin = new Admin("Daniel", "admin@email.com");
admin.apresentar(); // Saída será: Sou admin: Daniel

O método da classe filha tem prioridade.

Chamando o método do pai

Se quiser reutilizar o método do pai:

 apresentar() { super.apresentar(); console.log("Acesso administrativo"); } 

Herança demais é problema

Herança mal utilizada:

  • cria acoplamento forte
  • dificulta manutenção
  • gera hierarquias rígidas
Prefira composição quando possível.

Herança vs composição

Pergunta importante:

“é um tipo de?” → herança “tem um?” → composição

Exemplo:

  • Admin é um tipo de Usuário → herança
  • Usuário tem permissões → composição

Quando usar herança?

  • Modelos claros de especialização
  • Comportamento realmente compartilhado
  • Hierarquia pequena e estável

Resumo da aula para nunca mais esquecer

  • extends cria herança
  • super chama o pai
  • Métodos podem ser sobrescritos
  • Herança não copia código
  • Use com moderação

Na próxima aula, vamos falar sobre Campos Privados (#), entendendo como proteger dados dentro das classes.


HARDWARE

Entendendo o seu computador

O que há dentro do meu computador?

Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.

  • Gabinetes

  • Placas-Mãe

  • Processadores

  • Memória

  • Fontes

  • Drives Ópticos

  • Discos Rígidos

  • SSD

  • Placas de Som

  • Placas de Vídeo

Você Sabia?

Digitar senhas em computadores de uso coletivo é extremamente perigoso, pois além de softwares de monitoramento, existem dispositivos de hardware que podem capturar suas senhas. Evite ao máximo acessar sites de bancos a partir destes computadores. Veja mais aqui.


Street Fighter 2, lançado para o Super Nintendo no início dos anos 90, foi o principal responsável pelo aumento nas vendas deste console. Graças ao sucesso do título nos Arcades e à perfeita adaptação ao console, muitos consumidores adquiriram o SNES para jogarem o título em casa. Saiba mais.


O console Nintendo Entertainment System (NES), da Nintendo, detém o recorde de videogame mais clonado em todo o mundo. Já foram catalogados mais de 300 aparelhos diferentes capazes de reproduzir seus jogos! Saiba mais sobre ele aqui.


O épico jogo River Raid, do Atari, foi desenhado e boa parte de sua programação foi feita por uma mulher: Carol Shaw, uma excelente programadora e funcionária da Activision em 1982. Saiba mais sobre a história deste incrível jogo, aqui.


O título Asteroids, do Atari, possui recorde de pontuação há 30 anos. Em 1982 um americano chamado Scott Safran atingiu a marca de 41.336.440. Atualmente ele faz parte de um minúsculo grupo de jogadores que conseguiram manter seus recordes por mais de 30 anos.