Duvida sobre associação entre classes

2 respostas
Billy_fz

a

2 Respostas

staroski

Porque a classe Dinheiro possui um método getDinheiro()?
Instâncias dela já são o dinheiro em si.
Esse método poderia se chamar getValor().

Dinheiro não é um tipo primitivo numérico, então não dá pra você usar o operador +=.

Você tem que criar um novo objeto Dinheiro cujo valor é a soma do valor do saldo e o valor do dinheiro recebido por parâmetro.

public void deposita(Dinheiro dinheiro) {
    saldo = new Dinheiro(saldo.getDinheiro() + dinheiro.getDinheiro()):
}
Isaura_Antonio

public class Dinheiro {

private double dinheiro;

public Dinheiro(double dinheiro) {

this.dinheiro = dinheiro;

}
public double getDinheiro() {

return dinheiro;

}
public void setDinheiro(double dinheiro) {

this.dinheiro = dinheiro;

}
public double converteParaDolar() {

return dinheiro / (3.20);

}
public double converteParaEuro() {

return dinheiro / (4.10);

}
public void exibeDados() {

System.out.println(this.dinheiro);

System.out.println(converteParaDolar());

System.out.println(converteParaEuro());

}

public void deposita(double valor) {
dinheiro+= valor;

}

}Texto pré-formatado
identar texto pré-formatado por 4 espaços

public class Teste

{

public static void main(String[] args)

{

Dinheiro dinheiro = new Dinheiro(200);

Banco banco = new Banco(dinheiro);
System.out.println(""+banco.toString());
    dinheiro.deposita(200);
    System.out.println(""+dinheiro.getDinheiro());
}

}

Outra solução seria criar o metódo deposita() na class Dinheiro, depois chamarias sempre que precisares depositar!!

Criado 7 de outubro de 2020
Ultima resposta 7 de out. de 2020
Respostas 2
Participantes 3