Definição – o que significa Construtor?
Um construtor é um método especial de uma classe ou estrutura em programação orientada a objetos que inicializa um objeto recém-criado desse tipo. Sempre que um objeto é criado, o construtor é chamado automaticamente.
Um construtor é como um método de instância que geralmente tem o mesmo nome da classe e pode ser usado para definir os valores dos membros de um objeto, tanto como valores padrão quanto definidos pelo usuário. No entanto, embora se pareça com ele, um construtor não é um método adequado, pois não tem um tipo de retorno. Em vez de realizar uma tarefa executando o código, o construtor inicializa o objeto e ele não pode ser estático, final, abstrato e sincronizado.
Definirtec explica construtor
Construtores não são chamados explicitamente e são chamados apenas uma vez durante sua vida útil. No caso de uma hierarquia de classes em que uma classe derivada herda de uma classe pai, a sequência de execução do construtor é uma chamada para o construtor da classe pai primeiro e depois o da classe derivada. Construtores não podem ser herdados.
Os usuários não precisam escrever construtores para todas as classes. Um construtor pode ser declarado usando qualquer um dos modificadores de acesso. É obrigatório ter um construtor com o modificador de acesso correto.
No entanto, o compilador fornece um padrão se um modificador de acesso não for definido na classe e um construtor não for declarado. Este construtor padrão não pode ser encontrado no código-fonte, pois está no arquivo .class. Seu comportamento depende do idioma.
Embora seja frequentemente confundido com um construtor padrão, em construtores Java sem argumentos também existem e são chamados de “construtores sem arg”. Embora eles compartilhem a assinatura com o construtor padrão, o corpo dos construtores no-arg não está vazio e eles podem ter qualquer código. Construtores com argumentos, em vez disso, são conhecidos como “construtores parametrizados”.
Se um construtor for declarado como privado, a classe não pode ser criada ou derivada e, portanto, não pode ser instanciada. Esse construtor, no entanto, pode ser sobrecarregado com diferentes conjuntos de parâmetros.
O seguinte é recomendado no projeto do construtor:
-
A lógica que envolve operações específicas que precisam ser executadas em um determinado evento em um aplicativo – como abrir uma conexão de banco de dados – não deve ser escrita em um construtor.
-
Ao usar construtores de classe derivada, o construtor da classe pai deve receber os parâmetros corretos.
-
Uma melhor capacidade de manutenção do código vem de ter a inicialização e outras lógicas relacionadas em um construtor principal e fazer uma chamada cruzada desse construtor a partir de outros construtores sobrecarregados.
-
Como um construtor não pode retornar um valor para o código de chamada, é uma boa prática lançar uma exceção quando uma falha for encontrada.
O encadeamento do construtor ocorre sempre que uma classe base é estendida por um filho. A classe pai é, portanto, chamada primeiro sempre que um objeto dessa classe filho é criado.