Alguém consegue descobrir o erro desse código fonte?

package banco;

/**
*

  • @author JeanPaulo
    */
    public class Banco {
    int numero;
    Pessoa titular;
    double saldo;
    int agencia;

    class Pessoa {
    String nome;
    String cpf;
    String DataNascimento;
    }

void deposita(double valorAserDepositado) {
this.saldo += valorAserDepositado;
}

void saca(double valorAserSacado) {
if(this.saldo <= valorAserSacado) {
this.saldo -= valorAserSacado;
}
}

void tranfere(double valor, Banco destino) {
this.saldo -= valor;
destino.saldo += valor;
}

public static void main(String[] args) { 
    Banco mauricio = new Banco();
    mauricio.numero = 123;
    mauricio.saldo = 800.0;
    mauricio.agencia = 52361;
    
    mauricio.titular = new Pessoa();
    mauricio.titular.nome = "Mauricio";
    mauricio.titular.cpf = "072.427.689.00";
    mauricio.titular.DataNascimento = "13/11/1990";
    
    Banco guilherme = new Banco();
    guilherme.agencia = 52362;
    guilherme.numero = 1545;
    guilherme.saldo = 1500.0;
    
    
    mauricio.tranfere(100.0, guilherme);
    System.out.println(guilherme.saldo);

}  

}

Acho que ajudará se você disser o que o código está fazendo agora e o que você esperava que ele fizesse.

Acho melhor você identar o código antes…

Erros:

  • Não estar entre as tag
  • Não explicar o que o código deveria fazer e o que ele faz

Sugiro que leia:

http://www.guj.com.br/java/39020-regras-do-forum
http://www.guj.com.br/java/287484-gujnautas-how-to
http://www.guj.com.br/java/50115-voce-e-novo-no-guj-vai-criar-um-topico-e-colar-seu-codigo-fonte-leia-aqui-antes-por-favor

Boa tarde!

Amigo,

senti falta de definições de alguns objetos e ausência de composição de classes\objetos no seu fonte. Não sou especialista mas tentei criar um aplicativo com base no seu código fonte. Entendo que pode haver algumas ausência de conceito de O.O uma vez que estou estudando para ampliar\evoluir minha base de conhecimento.

Agora temos as classes Banco_Main, Pessoa e Banco. Você pode efetuar saldo inicial, depósito, saque e transferência. Eu procurei comentar com objetivo de auxiliar no seu entendimento.

Para os demais amigos que estão acompanhando essa ocorrência, caso identifique alguma falha no fonte em questão principalmente no que se trata de O.O peço que façam as devidas observações. Entendo que isso é de grande avalia para minha evolução pessoal.

Abraço a todos.

import javax.swing.JOptionPane;

public class BancoMain
{
	public static void main(String[] args) 
	{ 
		Pessoa titular  = new Pessoa( "Mauricio", "072.427.689.00", "13/11/1990" ); //Cria objeto Titular
		Banco dadosBancario = new Banco( 123, titular, 800.0, 52361 ); // Cria objeto Dados bancários com COMPOSIÇÃO á classe Pessoa
		
		//Executa depósito de novos valores
		dadosBancario.deposita(150.50);	
			
		//Executa saque
		dadosBancario.saque(350.50);	
			
		//Transfência
		dadosBancario.transferencia( 10.00 );		
		
		
		//Impressão de dados
		dadosBancario.extratoDisplay();	
	
	}//Fim class main

}//Fim class

	//Inicio da classe pessoa
	class Pessoa 
	{ 
		//Atributos da Classe Pessoa
		String nome; 
		String cpf; 
		String DataNascimento; 
		
		//Construtor classe pessoa	
		public Pessoa( String nomePessoa, String cpfPessoa, String dtNascPessoa )
		{
			nome = nomePessoa;
			cpf  = cpfPessoa;
			DataNascimento = dtNascPessoa;			
			
		}//Fim do construtor				
	
	}// Fim classe Pessoa 	
 
	//Inicio da classe banco
	class Banco 
	{ 
		//Atributos da Classe Banco
		int numero; 
		private Pessoa titular; //Atributo de composição a classe Pessoa
		private Pessoa titular2;	
		double saldoIni; 
		int agencia; 
		double saldoAtual;
		double deposVal;	
		double saqueVal;
		double transVal;
							
		
		//Construtor da classe Banco	
		public Banco( int numConta, Pessoa nome, double saldoConta, int agBancaria )
		{
			numero     = numConta;
			titular    = nome;
			titular2   = nome; 
			saldoIni   = saldoConta;  
			agencia    = agBancaria;	
			saldoAtual = saldoIni;				
		
		}//Fim do método construtor		
		
		 			
		//Método de retorno do saldo
		public double getSaldo( double saldo )
		{
			return saldo;
		
		}//Fim método
		
		
		//Método que retorna novos depósitos
		public double deposita( double valorAserDepositado )
		{
			saldoAtual = saldoIni + valorAserDepositado;
			deposVal = valorAserDepositado;  //Armazena valor depositado.	
			
			return saldoAtual; 	
		
		}//Fim método retorna depósito	
		
		//Método que saca valores
		public void saque( double valorSacado )
		{
			saldoAtual -= valorSacado; 	
			saqueVal = valorSacado;	//Armazena valor do saque.	
		
		}//Fim método retorna depósito	
		 
		
		//Método que executa transf
		public void transferencia( double valorTransf )
		{
			saldoAtual -= valorTransf;			
			transVal =  valorTransf;//Armazena valor transferido.		
		
		}//Fim método retorna depósito	
		
		//Impressão dos dados
		public void extratoDisplay()
		{
			//Impressão do extrato				
			JOptionPane.showMessageDialog(null,
			"Cliente: "            + titular.nome  			+ "\n" +
			"CPF: "                + titular.cpf   			+ "\n" +
			"Data Nascimento: "	   + titular.DataNascimento + "\n" +
			"Conta: "			   + numero                 + "\n" +
			"Agência: "            + agencia                + "\n" +
			"Saldo Inicial: "      + saldoIni               + "\n" +			
			"Valor Depósitado:"    + deposVal 	   			+ "\n" +
			"Valor Sacado: "       + saqueVal 	   			+ "\n" +
			"Valor Transferido: "  + transVal 				+ "\n" +
			"Saldo Atualizado: "   + saldoAtual );		
							
		}//Fim método display			
			
	}// Fim classe banco