Já entendi que está dizendo que o trecho acima no código "[color=darkred]boolean retirou = this.saca(valor)[/color] " é imcopatível com boolean por ser um void ou método.
O problema é que não sei como corrigir.
Assinaturas do métodos:
1.boolean Saca(double valor) {
2.void saca(double quantidade) {
Sua chamada:
booleanretirou=this.saca(valor);
Percebeste algo de diferente?
Até!
Rodrigo_Rocha_de_Mor
É, acho que ele disse tudo!
[]'s
ucastrobr
Obrigado maquiavelbona. Resolvido o código de conta acima o "saca" estava com letra minúscula o correto era:
boolean retirou = this.[color=darkred]Saca[/color](valor);
Mas tem um problema quando executo essa classe acima Conta em uma das minhas contas ele calcula saldo, deposito, tranferência. Só que se eu tiver como saldo inicial R$ 1000 e tentar sacar R$ 2000 ele não deixa, mas transferir ele deixa.
Veja o código:
classMinhasContas{publicstaticvoidmain(String[]args){ContaminhaConta;minhaConta=newConta();ContasuaConta;suaConta=newConta();minhaConta.nome="Pedro Álvares Cabral";minhaConta.saldo=1000;suaConta.nome="Bush";suaConta.saldo=5;suaConta.transfere(minhaConta,2000);booleanconsegui=minhaConta.Saca(2000);if(consegui){System.out.println("Consegui sacar");}else{System.out.println("Não consegui sacar");}System.out.println("Meu saldo atual é : "+minhaConta.saldo);}}
maquiavelbona
Dê uma olhadinha no método Saca e veja como ele trata a operação quando não é possível. Isso explica em parte pq o método saca não retorna e o Saca retorna algo.
Até!
caio_ferreira
kra, tbm estou estudando essa apostila, é como o amigo falou ai, esta acontecendo oq estava acontecendo com o metodo Saca(). Vc tem dois metodos transfere() e Transfere(), o Transfere() verifica se pode fazer a transferencia, o outro não, e vc esta usando o outro para testar.
ucastrobr
Valeu maquiavelbona e billcaio. Acho que daqui uns anos eu fico bom. heheehhehe! Por isso que meu avatar é um burro.
Aqui tem os dois códigos corrigidos para alguém que passar pelo mesmo que eu.
Se o moderador achar que está pesado os códigos é só dizer que eu retiro.
classPrograma{publicstaticvoidmain(String[]args){ContaminhaConta;minhaConta=newConta();ContasuaConta;suaConta=newConta();minhaConta.nome="Ulysses de Castro";minhaConta.saldo=1500;suaConta.nome="Cristina";suaConta.saldo=1000;suaConta.Transfere(minhaConta,500);booleanconsegui=minhaConta.Saca(2000);//o algoritmo ficou class contaif(consegui){//se o valor do saque for maiorSystem.out.println("Consegui sacar");//que o saldo "não saca"}else{System.out.println("Não consegui sacar");}System.out.println("Meu saldo atual é : "+minhaConta.saldo);}}
D4shxD
eu teria que fazer os 2 programas separados e usar um import ?
Ravnus
Sim e não!
Sim, se você estivesse usando C / C++!
Não, se você estiver usando Java.
No Java, quando você fizer uma chamada dentro de determinada classe à outra classe, o compilador irá procurar o arquivo .java dessa classe dentro do diretório do projeto.