1
resposta

Não precisa então declarar o método como STATIC ?

no exemplo foi reaproveitado o método voa da classe Aviao, com o código: Aviao.prototype.voa

Eu havia entendido que para se utilizar métodos de classes sem instanciar um objeto (new NomeClasse() ...) o método deveria ter declaração como static. Então quando utilizarmos prototype automaticamente todos os métodos de uma classe podem ser invocados sem ter um objeto instanciado ?

1 resposta

Errado adicionar ao prototype não necessariamente implica ser static. Faça o teste, rode isso no console do seu browser:

Date.prototype.teste = function(){return "teste";}
Date().teste() //ERRO
new Date().teste() // IMPRIME TESTE