Duvida quanto ao construtor

5 respostas
P

Pessoal, é o seguinte. Criei uma classe chamada pessoa e coloquei lá meus getters e setters, para os meus atributos, nome, cpf,email,rg,fone,cel e todos os atributos relativo à pessoa. A minha dúvida é: O que eu coloco no construtor dessa classe? Ou eu inicio o construtor vazio? Como eu estou começando agora com Java, eu tenho profundas dúvidas quanto à carregar o construtor. Essa classe é uma classe base, não vejo a necessidade de fazê-la abstrata ou devo sempre fazer para esse tipo de classe uma classe abstrata?

5 Respostas

joselmocs

E indiferente. Depende muito de como você vai utilizar a classe. Você não precisa fazê-la abstrata, você pode instancia-la sem construtor sem nenhum problema.

mario.fts

vc decide. pode tanto ser vazio quanto com atributos, e nem precisa de todos.

Isso define o modo com que o objeto será criado, se por exemplo, vc colcoar o nome no construtor, será impossivel criar uma pessoa sem nome. é isso q vc quer? é esse tipo de decisão que direciona sua escolha.

discorpio

Boa noite a todos.

Geralmente utilizamos o método construtor para inicializar algum atributo (variável) ou instanciar componentes que por ventura fazem parte da classe.

No seu caso, voce pode instanciar a sua classe pessoa de dois modos, isto porque como o método construtor também é um método, voce pode fazer sobrecarga dele, ou seja declará-lo com o mesmo nome, porém com parâmetros diferentes, assim voce pode optar para setar os valores das variáveis (atributos) no momento da instanciação, assim:

public class Pessoa {
     
      private String nome;
      private String cpf;
      .....
      .....
      
      public Pessoa(){
      }

      public Pessoa(String pnome, String pcpf, ..........){
              setNome(pnome);
              setCpf(pcpf);
              .....
              .....
      }

      // Aqui todos os getters e setters

}

Então voce tem a opção de instanciar sua classe assim:

Pessoa gente = new Pessoa();
   gente.setNome("Pjava");
   gente.setCpf("[CPF removido]");

Ou, assim:

Pessoa gente = new Pessoa("Pjava","[CPF removido]",........);

Qual dos dois voce vai preferir :?: Depende da sua vontade de escrever códigos, no entanto, se voce tiver mais de 15 atributos na classe, então acho melhor utilizar a primeira opção

P

Obrigado e só agora pude ler e responder. A forma que eu achei de aprender java, é fazendo um aplicativo. E esse aplicativo são uns cadastros e já de cara vem essas dúvidas, tipo, como utilizar um construtor e vcs me responderam. Obrigado a todos mesmo.

M

Mais uma vez: em Java, construtor não é método.

Criado 25 de fevereiro de 2010
Ultima resposta 28 de fev. de 2010
Respostas 5
Participantes 5