Diferença entre herança clássica e herança de protótipo
Encontrei esta definição aqui:https://medium.com/javascript-scene/10-interview-questions-every-javascript-developer-should-know-6fa6bdf5ad95#.y0nc8kx34
Não soa estranho para você? Essa definição faz sentido? Para mim, nos dois casos, há o uso de um construtor (com o novo você pode substituir o objeto retornado) e, nos dois casos, há uma herança de protótipo. Estou faltando alguma coisa ou a definição acima não é realmente precisa?
* 3 Qual é a diferença entre herança clássica e herança prototípica?
Herança de classe: instâncias herdam de classes (como um blueprint - uma descrição da classe) e criam relacionamentos de subclasses: taxonomias hierárquicas de classe. As instâncias são geralmente instanciadas por meio de funções construtoras com o métodonew
palavra-chave A herança de classe pode ou não usar oclass
palavra-chave do ES6.
Herança prototípica: instâncias herdam diretamente de outros objetos. As instâncias geralmente são instanciadas por meio de funções de fábrica ouObject.create()
. As instâncias podem ser compostas de muitos objetos diferentes, permitindo fácil herança seletiva. *