Bem, tambem sou iniciante. Caso errar no que falar, por favor me corrijam galera.
[code]class Teste {
private double saldo;
public void armazenaValor(double valor){
saldo = double valor;
}
public double saldo() {
return saldo;
}
}[/code]
O seu codigo poderia ser escrito dessa maneira acima. Nao há necessidade do this porque o nome da variavel local e o nome da variavel de instancia sao diferentes. Caso fosse igual, voce utilizaria o this.
O negocio é Orientação a Objetos cara. Tambem tenho duvidas sobre isto e por isso estou tentando me familiarizar. Faça o mesmo ![:wink: :wink:](https://www.guj.com.br/images/emoji/twitter/wink.png?v=9)
A sua duvida é sobre o get e o set ne. Ok. Para que serve o get e o set? Primeiramente, o que é get e set?
Get = obter;
Set = configurar, estabelecer;
Em ingles é mais ou menos isto. O set e get é usado apenas como nomenclatura no nome do metodo. Por exemplo, na classe Teste acima voce nao usou o get como nome do saldo. Porem, fazer isto se torna confuso depois na hora que voce for ler o programa. Entao, é utilizado o get e o set para dizer que é para setar ou obter algo.
Beleza, mas vou setar e obter o que? Simples, a variavel de instancia. Mas, o que é uma variavel de instancia?
Quando voce cria uma classe e depois cria um objeto dela, é como se sua classe estivesse em vida. Imagina uma planta de uma casa desenhada como Classe e o Objeto como a sua casa. É como se fosse isso.
Agora, a planta de uma casa poderia ser usada para fazer a sua casa, a minha casa, a casa de outra pessoa… O meu gosto é diferente do seu. Vamos dizer que eu gosto de parede vermelha e voce gosta de parede azul (cores bem exoticas ne… ).
Agora, em meu objeto, eu teria que diferenciar isto. Como eu faço isto? Usando um atributo como private, ou seja, este atributo é visivel apenas pela classe que esta. So a classe onde ele esta é que pode modificar ele. Por isso é que sao usados os atributos get e set.
Com isso, eu poderia criar na minha Planta uma variavel de instancia chamada Cordeparede e a cada objeto criado definir a cor desejada.
[code]class Planta {
String cordeparede = “”;
public static void main(String args[]) {
Planta obj_tecno = new Planta(“Vermelho”);
Planta obj_leandro = new Planta(“Azul”);
obj_tecno.mostrarCor();
obj_leandro.mostrarCor();
}
public Planta(String cor){
cordeparede = cor;
}
public void mostrarCor(){
System.out.println("A cor escolhida e: " + cordeparede);
}
}[/code]
Teste este exemplo e ve se suas duvidas sanaram. Se tiver duvidas novamente, volte aqui neste topico…
Repara que para setar o atributo cor eu nao usei um metodo set, usei o proprio construtor da classe; e para obter eu nao usei um metodo get. Mas isso apenas se deu porque fiz o exemplo todo na mesma classe.
Em programas maiores, tem-se a necessidade de dividir para uma melhor depuração e possivelmente uma futura reparação no programa. Desse modo, precisa criar o metodo set e get.
Abraços