Depois de ver esta aula sobre métodos estáticos de objetos, me veio esta dúvida: Já que não instanciamos com "New" e sim com o objeto por si só, então este método é um método estático?
Depois de ver esta aula sobre métodos estáticos de objetos, me veio esta dúvida: Já que não instanciamos com "New" e sim com o objeto por si só, então este método é um método estático?
Oi, Pedro! Tudo bem?
Ótima pergunta! O console.log()
não é exatamente um método estático no sentido de estar associado a uma classe que você cria no seu código, em JavaScript, console
é um objeto global e log()
é um método desse objeto.
Quando falamos de métodos estáticos no contexto de programação orientada a objetos, estamos nos referindo a métodos que pertencem à própria classe, e não a instâncias dessa classe. Eles são chamados diretamente na classe, sem a necessidade de criar um objeto a partir dessa classe usando new
.
No caso do console.log()
, ele é acessado diretamente através do objeto console
, sem a necessidade de instanciar nada, o que é semelhante ao comportamento de métodos estáticos, mas console
é um objeto global, não uma classe que definimos.
Espero ter ajudado!
Um forte abraço e bons estudos!