não tá funcionando meu método?

5 respostas
A

por favor pq a variável valor não é impressa com o valor 100?

abraço

double saldo;
	
	void depositar(double valor){
		if (valor < 0) {
			throw new ExcecaoDoAndreException("Valor digitado e incorreto: " + valor);
		}	
		else{
			saldo = saldo + valor; // ou //this.saldo += valor;
		}
	}
	
	public static void main(String[] args) {
		new TestaExcecao2().depositar(100);
		System.out.println(new TestaExcecao2().saldo);
	}

5 Respostas

E

Você depositou em um objeto e pegou o saldo de outro. Note que você criou 2 objetos diferentes, porque chamou new duas vezes.

Não tenha preguiça de criar variáveis. Acho que uma das invenções mais danosas foi o “copy & paste”.

evertonsilvagomesjav
andredecotia:
por favor pq a variável valor não é impressa com o valor 100?

abraço

double saldo;
	
	void depositar(double valor){
		if (valor < 0) {
			throw new ExcecaoDoAndreException("Valor digitado e incorreto: " + valor);
		}	
		else{
			saldo = saldo + valor; // ou //this.saldo += valor;
		}
	}
	
	public static void main(String[] args) {
		new TestaExcecao2().depositar(100);
		System.out.println(new TestaExcecao2().saldo);
	}

Por que vc esta criando dois objetos diferentes perceba:

new TestaExcecao2().depositar(100);
e um aqui
System.out.println(new TestaExcecao2().saldo);

Entao ele vai imprimir o valor Default 0.

Troque por:

public static void main(String[] args) {
		TestaExcecao2 testa = new TestaExcecao2();
testa.depositar(100);
		System.out.println(testa.saldo);
	}
D

crie apenas uma instancia da classe…
(OBS: foi mal, n percebi q sua resposta foi a msm…)

vlw

A

solucionadíssimo…

vocês são o professor que eu paguei (UniRadial, USP e outras escola) mas não tive hehehe…

André AS

D

andredecotia:
solucionadíssimo…

vocês são o professor que eu paguei (UniRadial, USP e outras escola) mas não tive hehehe…

André AS

coloca [RESOLVIDO] no titulo do tópico…
vlw

Criado 13 de julho de 2010
Ultima resposta 13 de jul. de 2010
Respostas 5
Participantes 4