De forma simples, qual a diferença entre métodos e construtores?
De forma simples, qual a diferença entre métodos e construtores?
Olá Thiago!
Um método sempre precisa especificar o tipo de retorno e pode ser invocado a qualquer momento desde que você possua uma instância do objeto.
Um construtor não possui tipo de retorno e sempre possui o mesmo nome da classe. Além disso, o construtor só pode ser invocado quando uma nova instância do objeto é criada (usando o operador new).
Bom dia Thiago, segue uma explicação interessante que tem no StackOverflow:
A principal diferença entre construtores e métodos é que Construtores criam e inicializam objetos que ainda não existem, enquanto Métodos realizam operações em objetos que já existem.
Construtores não podem ser chamados diretamente; são chamados de forma implícita quando a palavra chave new cria um objeto.Métodos podem ser chamados diretamente em um objeto que já foi criado com o new.
A definição de Construtores e Métodos é similar no código. Ambos aceitam parâmetros, ambos possuem modificadores (ex: public), e ambos possuem corpo de método entre chaves.
Construtores devem obrigatoriamente ter o nome da Classe. Não possuem retorno, nem mesmo void (O objeto em si que está sendo criado é o retorno implícito). Métodos devem declarar que retornam algo, nem que seja void.
Acredito que o item 1 seja o resumo mais simples e bem definido que você possa utilizar. Os itens 2 a 4 são mais detalhamentos.
Abraço.