This

4 respostas
H

E aí galera, sou newba em java, e estou estudando através da apostila da caelum.
Pela primeira vez, foi usado o THIS.
Minhas duvidas encontram-se em "//...."
da seguinte forma:

class Conta{
	int numero;
	String dono;
	double saldo;
	double limite;

	void imprimeBanco() {
		System.out.println("Esta conta é do Banco Hawk");
		}

	void saca(double quantidade) {
		double novoSaldo = this.saldo - quantidade;
		this.saldo = novoSaldo;
		}
	                    /* Muito bem aqui temos o this pela primeira vez,
a explicação dada na apostila é: Dentro do método
 estamos declarando uma nova variável. Essa variável,
 assim como o argumento, vai morrer no fim do método,
pois este é seu escopo. No momento que vamos acessar
 nosso atributo (QUAL???), usamos a palavra chave this
para mostrar que é um atributo, e nao uma simples variável */
                                      // Qual atributo é acessado? nao entendi muito bem...



	void deposita(double quantidade) {
		this.saldo += quantidade;
		}

	                    // nesse caso o novoSaldo não é atualizado?
                                        // ainda nao entendi muito bem o +=. -=...

}

obrigado desde já pessoal.

4 Respostas

peczenyj
class Conta{
 	int numero; // Veja ! Um atributo de classe!!
 	String dono; // Mais outro !
 	double saldo; // também é atributo !
 	double limite; // e mais outro ! Puxa q classe atributada !
 
 	void imprimeBanco() {
 		System.out.println("Esta conta é do Banco Hawk");
 		}
 
 	void saca(double quantidade) {
 		double novoSaldo = this.saldo - quantidade;
 		this.saldo = novoSaldo; 
/* humm eu tenho um atributo de classe chamado SALDO la em cima...
sera que este saldo tem alguma coisa haver ? humm... pense um pouco
Alias vc nem precisa desse novoSaldo, faça:
 		this.saldo = this.saldo - quantidade*/
 		}
 
 	void deposita(double quantidade) {
 		this.saldo += quantidade;
 /*o operador += é o mesmo que 
this.saldo = this.saldo + quantidade 
ele so permite que vc escreva a expressão de forma mais sucinta */
 		}
 
   	void imprimeSaldo() {
 		System.out.println("O meu saldo eh " + this.saldo);
 	}
 }
H

valeo PEC!!! ajudou bastante…
agora em relação ao this…
se o saldo tá na mesma classe, ele é necessário??? pq??
valeu!!!

peczenyj

Como vc diferencia a variavel local saldo do atributo da classe saldo ?

o this tb pode ser usado para chamar o construtor da classe

class A{
 int atribute;
 
 public A(int atribute){
    this.atribute = atribute;
 }

 public A(){
   this(0); // chama o contrutor A(int)
  /* vc pode querer usar isto para passar um valor default, por exemplo */
 }

}
H

perfect!!!
valeu man!!

Criado 1 de maio de 2006
Ultima resposta 1 de mai. de 2006
Respostas 4
Participantes 2