Bom dia
Bom estou estudando orientação a objeto para que possa programar no Java de uma forma melhor…
Bom seguinte… hoje estou fazendo tanto as classes quanto os métodos todos publicos. Estou lendo uma apostila aqui que esta me indicando que os atributos sempre serão privates e os métodos serão publicos que estaram acessando os atributos.
Sempre será desta forma? e como por exemplo acesso um atributo que seja private?
Você acessa seus atributos private através de métodos públicos, os famosos getters e setters…
public class Teste{
private int Codigo;
public void setCodigo(int novoCodigo){
this.Codigo = novoCodigo
}
public int getCodigo(){
return this.Codigo;
}
}
Manjou??
Dá uma lida em ‘Encapsulamento’.
[quote] De uma olhada no seguinte tópico:
http://www.guj.com.br/posts/list/59192.java#310994 [/quote]
Obrigado vou dar uma olhada sim.
[quote]Você acessa seus atributos private através de métodos públicos, os famosos getters e setters…
Code:
public class Teste{
private int Codigo;
public void setCodigo(int novoCodigo){
this.Codigo = novoCodigo
}
public int getCodigo(){
return this.Codigo;
}
}
Manjou??[/quote]
legal legal… pelo get set beleza… mas assim… a forma digo… os atributos private e os metodos publicos SEMPRE SERÃO DESTA FORMA?
O ideal é manter sempre seus atributos como “private”, pois tal prática é recomendada pela OO, devido à garantia do encapsulamento.
Em sistemas maiores, por exemplo, se os atributos (variáveis de instância) forem declarados “public”, outras classes do sistema poderão acessá-los, fato que poder tornar-se indesejável e, muitas vezes, perigoso, como no caso de uma senha, por exemplo.
[quote=henry.everton]Bom dia
Bom estou estudando orientação a objeto para que possa programar no Java de uma forma melhor…
Bom seguinte… hoje estou fazendo tanto as classes quanto os métodos todos publicos. Estou lendo uma apostila aqui que esta me indicando que os atributos sempre serão privates e os métodos serão publicos que estaram acessando os atributos.
Sempre será desta forma? e como por exemplo acesso um atributo que seja private?[/quote]
Você coloca os atributos como private e os métodos como public para fazer encapsulamento (dê uma estudada nisso).
Mas nem sempre é assim, depende de como você quer que o seu sistema seja modelado.
Respondendo à sua última pergunta, você pode acessar um atributo private através de um método public (se for acessar a partir de outra classe), ou pode até ser um método private que acesse atributos dentro da própria classe.
eu continuei dando uma lida aqui e percebi q a questão dos métodos sao maleaveis… posso alterar como eu quiser… mas os atributos deverao ser private todos…
Obrigado a todos pelas respostas e pelos links… estou vendo todos.