Galera me peguei em 2 dúvidas aqui…
qual a diferenca entre se utilizar um modificar private, protected ou public?
Outra coisa um objeto pode utilizar um construtor quantas vezes quiser em uma aplicação?
Obrigado a todos
Galera me peguei em 2 dúvidas aqui…
qual a diferenca entre se utilizar um modificar private, protected ou public?
Outra coisa um objeto pode utilizar um construtor quantas vezes quiser em uma aplicação?
Obrigado a todos
Você precisa chamar o construtor a cada vez que quiser criar um objeto.
[quote=seoman]Galera me peguei em 2 dúvidas aqui…
qual a diferenca entre se utilizar um modificar private, protected ou public?
[/quote]
Um elemento (classe, atributo ou método) tem um nivel de visibilidade, ou seja, é possivel definir , para cada elemento,
quem pode ter acesso a ele. Para entender o nivel de acesso vc precisa entender o conceito de pacote.
public significa que todos em qualquer lugar têm acesso. qualquer classe, seja do mesmo pacote ou de outro, seja filha ou não.
private significa que ninguem tem acesso. Apenas a própria classe tem acesso. O acesso privado é na realidade a restrição de todo o acesso externo. Nenhuma outra classe, em nenhum pacote , filha ou não, terá acesso ao elemento.
protected é um compromisso. O elemento pode ser acessado se a classe que está acessando estiver no mesmo pacote ou for filha da classe que declara protected. Um elemento protected não é visivel a todos, mas é mais liberal que o private.
Quem utiliza o construtor é a JVM quando ela controi o objeto.
O construtor pertence à classe do objeto e não ao objeto em si.
O contrutor é na realidade apenas um, mas ele pode ter várias sobrecargas, ou seja, vc pode escrever construtores com parâmetros diferentes. Depois, vc pode escolher qual quer usar quando criar o objeto.
Quando vc usa o comando new vc está escolhendo qualquer sobrecarga vai usar e está dizendo quais parâmetros vão ser usados.
Enfim, vc pode declarar quantos contrutores quiser (embora não ser boa ideia uma classe ter muito mais de 3 ou 4 construtores).
Quando vc usa o comando new, a JVM irá procurar pelo construtor certo e executá-lo.
Tem alguns materiais aqui no GUJ mesmo que podem te ajudar
http://www.guj.com.br/article.show.logic?id=134
dê uma lida talvez respoda a maior parte de suas perguntas.
Kind Regards.