[Resolvido]Error: missing return statement

4 respostas
I

estou recebendo um erro dentro desse código e não consigo enxergar o porque...

class Cliente{
	private String nome;
	private String sobrenome;
	private String cpf;
	private int idade;
	
	private void validaCPF(String cpf){
		System.out.println("CPF Validadado");
	}
	
	public void mudaCPF(String cpf){
		if(this.idade <= 60){
		validaCPF(cpf);	
		}
		this.cpf = cpf;
	}
}

class Conta{
		private int numero;
		private String dono;
		private double saldo;
		private double limite;
		private double novoSaldo;
		Cliente titular = new Cliente();
		
		public String getDono(){
			return this.dono;
		}
		
		public void setDono(String dono){
			this.dono = dono;
		}
		
		public double getSaldo(){
			if(this.saldo == 0){
				System.out.println("Conta sem nenhum valor disponível!");
			}
			return this.saldo;
		}
		public void deposita(double valor){
			if(valor <=  0){
				System.out.println("Valor não permitido!");
			}
			else{
				this.saldo = valor+saldo;
			}
		}
		boolean saca(double valor){
			if(this.saldo < valor){
				System.out.println("Valor de saldo Insuficiente!");
				this.saldo = saldo;
			}
			else{
				this.saldo = saldo - valor;
			}
		}
		
		boolean transeferePara(Conta destino, double valor){
			boolean retirou = this.saca(valor);
				if(retirou == false){
					System.out.println("Trasferencia não realizada saldo insuficiente");
					return false;
				}
				else{
					destino.deposita(valor);
					return true;
				}
		}
			
		void imprime(){
			System.out.println("Titular : "+getDono()+"\nSaldo :"+getSaldo());
		}
}
	

class Programa{
	public static void main(String[] args){
		Conta minhaConta = new Conta();
		minhaConta.setDono("Joao");
		minhaConta.deposita(100.0);
		minhaConta.saca(50.0);
		minhaConta.imprime();
	}
}

alguém poderia me auxiliar?

4 Respostas

Luiz_Augusto_Prado
i_rodrigues:
estou recebendo um erro dentro desse código e não consigo enxergar o porque...
class Cliente{
	private String nome;
	private String sobrenome;
	private String cpf;
	private int idade;
	
	private void validaCPF(String cpf){
		System.out.println("CPF Validadado");
	}
	
	public void mudaCPF(String cpf){
		if(this.idade <= 60){
		validaCPF(cpf);	
		}
		this.cpf = cpf;
	}
}

class Conta{
		private int numero;
		private String dono;
		private double saldo;
		private double limite;
		private double novoSaldo;
		Cliente titular = new Cliente();
		
		public String getDono(){
			return this.dono;
		}
		
		public void setDono(String dono){
			this.dono = dono;
		}
		
		public double getSaldo(){
			if(this.saldo == 0){
				System.out.println("Conta sem nenhum valor disponível!");
			}
			return this.saldo;
		}
		public void deposita(double valor){
			if(valor <=  0){
				System.out.println("Valor não permitido!");
			}
			else{
				this.saldo = valor+saldo;
			}
		}
		boolean saca(double valor){
			if(this.saldo < valor){
				System.out.println("Valor de saldo Insuficiente!");
				this.saldo = saldo;
			}
			else{
				this.saldo = saldo - valor;
			}
		}
		
		boolean transeferePara(Conta destino, double valor){
			boolean retirou = this.saca(valor);
				if(retirou == false){
					System.out.println("Trasferencia não realizada saldo insuficiente");
					return false;
				}
				else{
					destino.deposita(valor);
					return true;
				}
		}
			
		void imprime(){
			System.out.println("Titular : "+getDono()+"\nSaldo :"+getSaldo());
		}
}
	

class Programa{
	public static void main(String[] args){
		Conta minhaConta = new Conta();
		minhaConta.setDono("Joao");
		minhaConta.deposita(100.0);
		minhaConta.saca(50.0);
		minhaConta.imprime();
	}
}
alguém poderia me auxiliar?
nem nós vemos o problema. vc tem que imprimir o erro que aparece no seu console. mas adianto uma coisa... na linha onde está
Cliente titular = new Cliente();
vc deveria colocar pelo menos isso dentro de um construtor.
I

Boa tarde Luiz,

desculpe não ter mencionado anteriormente, o erro no console é o título do assunto. Vou reproduzir aqui exatamente como mostra meu console:

Prograna.java:57: error: missing return statement
}
^
1 error

acredito que o erro esteja atrelado ao método saca ou transferePara, pois quando omito esses dois métodos o código compila.

a sua sugestão de colocar o Cliente dentro de um construtor eu não entendi. Na verdade quero que toda vez que se crie uma conta seja criado também o cliente, por isso fiz dessa maneira. Se tiver outra sugestão fico grato!

adriano_si

Seu método

boolean saca(double valor){  
            if(this.saldo &lt; valor){  
                System.out.println("Valor de saldo Insuficiente!");  
                this.saldo = saldo;  
            }  
            else{  
                this.saldo = saldo - valor;  
            }  
        }

Espera um boolean como retorno e você não retorna nada.

Abs []

I

adriano-si, muito obrigado meu caro!

estou iniciando em java e já percebi que esse fórum irá me auxiliar muito!

mais uma vez Obrigado!

Criado 21 de novembro de 2014
Ultima resposta 21 de nov. de 2014
Respostas 4
Participantes 3