Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Não entendi a diferença entre herdar uma classe e instancia-la

Não entendi muito bem a diferença entre herdar uma classe e instancia-la. Por exemplo:

"você pode usar Mixins, que são apenas classes que podem ser herdadas mas que não devem ser instanciadas"

Instanciar é quando criamos um objeto?

jose = Junior('José')

Herdar é apenas quando inserimos na contrução da classe?

class Junior(Alura, Hipster)

Seria isso?

3 respostas
solução!

Boa tarde, Anderson!

Isso mesmo. Instânciar uma classe é quando você cria um novo objeto a partir dela, exatamente o exemplo que você colocou. Herdar (a grosso modo) uma classe é utilizar os atributos e métodos que essa classe oferece, sem precisar reescrevê-los novamente. E sim, vc herda uma classe passando o nome das classes na sua construção.

Mixins são classes auxiliadoras. Por exemplo, uma classe User que possui os fields nome, email, telefone. E uma classe Gerente que herda de usar, mas gerente pode ter muito mais atributos que esses, além de outros métodos.

Isso, ao fazer isso você tem acesso às propriedades da classe que "herdou" (vulgo super()) sem necessariamente instancia-la e transforma-la em um novo objeto

Certo, entendi. Obrigado galera!