Estou Tendo Problemas Com Metodos.. ;s

13 respostas
thegost007

ESTOU TENDO PROBLEMAS COM METODOS !

class Conta{  
    String dono;  
    double saldo;    
                    }

         class class_Programa1 {	
		 public static void main(String[] args) {			 
		 
		 Conta minhaConta;
		 minhaConta = new Conta();		
		 minhaConta.dono = "Anderson";
		 minhaConta.saldo = 1000;		
		 
		 minhaConta.saca(200);		 
		 minhaConta.deposita(500);
		 System.out.println(minhaConta.saldo);
		 }
		 }

e ESTA DANDO ESSE ERRO:

[color=red]Exception in thread "main" java.lang.Error: Unresolved compilation problems:
The method saca(int) is undefined for the type Conta
The method deposita(int) is undefined for the type Conta

at class_Programa1.main(class_Programa1.java:12)[/color]

13 Respostas

manolimars

o “erro” que está dando é simplesmente porque não existe os métodos “saca(int)” e “deposita(int)” na Classe Conta

thegost007

Botei Assim Nao sei se é o Certo :

class Conta{ String dono; double saldo; int saca; int deposita; }

CONTINUA DANDO O MESMO ERRO: ACHO Q BOTEI ERRADO DA UM EXEMPLO AI POR FAVOR!

manolimars

o correto seria assim:

class Conta
{  
    String dono;  
    double saldo;
    
    public void saca(int valorSacar)
    {
             //retira do saldo atual
             this.saldo = this.saldo-valorSacar;
    }

    public void deposita(int valorDepositar)
    {
             //acrescenta ao saldo atual
             this.saldo = this.saldo+valorDepositar;
    }
}
thegost007
manolimars:
o correto seria assim:
class Conta
{  
    String dono;  
    double saldo;
    
    public void saca(int valorSacar)
    {
             //retira do saldo atual
             this.saldo = this.saldo-valorSacar;
    }

    public void deposita(int valorDepositar)
    {
             //acrescenta ao saldo atual
             this.saldo = this.saldo+valorDepositar;
    }
}

É PQ QUERO APRENDE PRIMEIRO DAQUELE JEITO DESSE Q VOCE MIM MOSTROU AINDA VO APRENDE ;S TO LENDO UMA APOSTILA JAVA F11 TO PERDIDO NISSO TEM OUTRO EXEMPLO PARECIDO DO MEU??

edimarakika

Dá uma olhada nesses links
Talvez te ajude
:wink:

thegost007

muito obg mas nao to estudando isso ainda, se eu for fazer desse jeito vo mim perde, to em metodos ainda o proximo é Métodos com retorno

manolimars

é que do jeito que voce fez, voce criou duas variaveis,

int saca;
int deposita;

mas no seu programa voce exige dois métodos

minhaConta.saca(200);//isto é a chamada do método saca
minhaConta.deposita(500); //isto é outra chamada do método deposita

no exemplo que eu te passei antes, foram criados os métodos que não existiam

public void saca(int valorSacar)

public void deposita(int valorDepositar)

e leia o erro que voce mostrou na primeira mensagem:
The method saca(int) is undefined for the type Conta
The method deposita(int) is undefined for the type Conta

“o método saca(int) é indefinido para o tipo Conta”
“o método deposita(int) é indefinido para o tipo Conta”

thegost007
Tipo Fiz Assim:
class Conta{  
				    String dono;  
				    double saldo;
				    public void deposita(int valorDepositar){
				    public void saca(int valorSacar){
				    	
				     }					  
				    }
				   }
Mesmo Assim Da um Erro. [color=red]Exception in thread "main" java.lang.Error: Unresolved compilation problems: Syntax error on token "(", ; expected Syntax error on token ")", ; expected

at class_Programa1.main(class_Programa1.java:7)[/color]

Nao sei se pode ficar Assim ou daquele geito que voce mim Mostrou..
Na Apostla Nao Ensina Nd Disso :(

manolimars

olha o erro:
"Syntax error on token “(”, ; expected "

Erro de Sintaxe

voce está colocando um método dentro do outro, quando o correto é coloca-los separados, igual eu te mostrei

thegost007

Nossa Se é INTELIGENTE Pra Karamba Preciso do teu Msn :D

Botei Assim:

class Conta{  
				    String dono;  
				    double saldo;
				    public void deposita(int valorDepositar){
				    }
				    public void saca(int valorSacar) {
				    	
				     }					  
				    }

Pegou De Boa o resultado deu 100.0 Era pra da Outro Resultado Nao?
Muito Obrigado..

manolimars

sim, só que note que seus métodos não estão fazendo nada, por exemplo o método saca, ele deve pegar o valor que voce enviou para ele e diminuir da variavel “saldo”, e o método deposita, voce deve pegar o valor enviado e acrescentar na variável saldo, como eu mostrei antes:

public void saca(int valorSacar)
    {
             //pega o valor informado e retira do saldo atual
             saldo = saldo-valorSacar;
    }

    public void deposita(int valorDepositar)
    {
             //pega o valor informado e acrescenta ao saldo atual
             saldo = saldo+valorDepositar;
    }
thegost007

Nossa Muleke Voce E show Muito Obg!
Muito Obg Mesmo u.u
Se Puder Manda Teu Msn Pra Mim Tira Algumas Duvida Ao Precisar.

Obrigado.

manolimars

cara, todas suas dúvidas voce pode postar aki no fórum, a sua dúvida é a dúvida de muitos por aki,

caso queira pode mandar MP

abraço e bons estudos!

Criado 12 de março de 2011
Ultima resposta 12 de mar. de 2011
Respostas 13
Participantes 3