Senior
Fala sobre a função super() e quando a usas?
sobes.tech IA
Resposta da IA
A função super() é usada em classes para chamar o construtor da classe pai ou os métodos do pai.
É aplicada em dois casos principais:
-
No construtor de uma classe filha para chamar o construtor da classe base e uma inicialização correta das propriedades herdadas.
-
Para chamar métodos do pai, se for necessário expandir ou sobrescrever o comportamento, mantendo parte da lógica da classe base.
Exemplo:
class Animal {
constructor(name) {
this.name = name;
}
speak() {
console.log(`${this.name} faz um som.`);
}
}
class Dog extends Animal {
constructor(name, breed) {
super(name); // chamada ao construtor de Animal
this.breed = breed;
}
speak() {
super.speak(); // chamada ao método speak de Animal
console.log(`${this.name} late.`);
}
}
Sem a chamada a super() no construtor da classe filha, ocorrerá um erro, pois a classe base não está inicializada.