Aqui há UMA classe e DOIS construtores. Nenhum deles é o "principal"; não existe uma coisa como um "construtor principal" mas sim um "construtor default", que é o construtor "sem parâmetros" e que é automaticamente criado pelo compilador, se você não definir nenhum construtor.
jason_bourne
thingol:
Aqui há UMA classe e DOIS construtores. Nenhum deles é o “principal”; não existe uma coisa como um “construtor principal” mas sim um “construtor default”, que é o construtor “sem parâmetros” e que é automaticamente criado pelo compilador, se você não definir nenhum construtor.
kra vlw mesmo…mas me diga, eu até agora não entendi pq nesse código tem dois construtores, vc sabe me dizer o motivo?
micheljuca
So existe uma classe Pessoa.
As outras duas que vc ve nao sao classes.
Na verdade sao construtores. Metodos com o
mesmo nome da classe que servem para
criar, instanciar objetos do tipo Pessoa.
UPDATE:
O cache me pegou. Ja havia sido respondido.
A razao de haver dois ou ate mais construtores
chama-se sobrecarga de metodos. OU seja,
mesmo nome e assinatura diferente.
Digamos que vc crie uma classe Quadrado.
E vc cria um construtor que recebe o LADO e
outro que nao recebe nada.
Assim vc tem duas opcoes de criar objetos,
ja conhecenco o LADO ou nao conhecendo.
Esse ultimo vc poderia usar o lado depois
com um metodo SET por exemplo.
jason_bourne
micheljuca:
So existe uma classe Pessoa.
As outras duas que vc ve nao sao classes.
Na verdade sao construtores. Metodos com o
mesmo nome da classe que servem para
criar, instanciar objetos do tipo Pessoa.
Então, mas vc entendeu pq tem dois construtores? pois eu não entendi, não deveria ter um só?
T
thingol
Ela tem dois construtores para dar uma opção ao programador - se ele quer passar ano, mês ou dia separados, ou então um objeto java.util.Date. É a mesma coisa que você poder pagar uma compra com cartão de crédito ou de débito; é só questão de comodidade.
jason_bourne
thingol:
Ela tem dois construtores para dar uma opção ao programador - se ele quer passar ano, mês ou dia separados, ou então um objeto java.util.Date. É a mesma coisa que você poder pagar uma compra com cartão de crédito ou de débito; é só questão de comodidade.