Criação de Sistema bancario utilizando Array List

:?:Boa tarde amigos, sou novo por aqui e comecei a estudar java a pouco tempo, estou com um pequeno problema no trecho de codigo que mostra nas imagens que compartilhei no google docs (basta clicar no link abaixo), este codigo é referente ao enunciado que inseri abaixo da imagem.
Coloquei em anexo tambem o enunciado e o codigo referente a classe que estou com problemas, alguem pode me ajudar a resolver ? Esta aparecendo 5 erros que não consigo entender.
OBS: Eu já terminei só preciso corrigir estes erro que não encontro o motivo.


Desde já agradeço pela atenção.
[b]

https://drive.google.com/folderview?id=0B-m-v6_Q9szxdDFEUERqUEM0OFk&usp=sharing :?:

Voce poderia criar o objeto no começo da classe

Conta c = new Conta();

No trecho onde o ‘c’ aparece com erro, provavelmente voce também não instanciou aquela variavel.

[quote=herman.monteiro] :?:Boa tarde amigos, sou novo por aqui e comecei a estudar java a pouco tempo, estou com um pequeno problema no trecho de codigo que mostra nas imagens que compartilhei no google docs (basta clicar no link abaixo), este codigo é referente ao enunciado que inseri abaixo da imagem.
Coloquei em anexo tambem o enunciado e o codigo referente a classe que estou com problemas, alguem pode me ajudar a resolver ? Esta aparecendo 5 erros que não consigo entender.
OBS: Eu já terminei só preciso corrigir estes erro que não encontro o motivo.


Desde já agradeço pela atenção.
[b]

https://drive.google.com/folderview?id=0B-m-v6_Q9szxdDFEUERqUEM0OFk&usp=sharing :?: [/quote]

Só dá para ver uma imagem
e pela imagem

faltou instância

Conta c = new Conta();

Pessoal, segue novamente o link.

(Coloquei o link para a pasta principal e abaixo o link individual de cada arquivo)


Pasta completa

https://drive.google.com/folderview?id=0B-m-v6_Q9szxdDFEUERqUEM0OFk&usp=sharing


Arquivos

https://drive.google.com/folderview?id=0B-m-v6_Q9szxMnFEZzRzT3pLTlE&usp=sharing
https://docs.google.com/document/d/1DM1Iyiixb5OafhIkexs_pL-BGDxJ_ziKYUqSEtENYQY/edit?usp=sharing
https://docs.google.com/file/d/0B-m-v6_Q9szxQVJrY1VfMU9Bck0/edit?usp=sharing
https://docs.google.com/document/d/1qBEtIMrh63bx6_eyU9Pjwv1aEXt3N4rJgO3MZinsvZE/edit?usp=sharing
https://docs.google.com/file/d/0B-m-v6_Q9szxdzVyVTBNc0ppNHM/edit?usp=sharing

SEGUE ABAIXO COMO ESTA MEU CODIGO.

package Classes;

import java.util.ArrayList;

public class Agencia {

private ArrayList<Conta> CC = new ArrayList<Conta>(20);
	
private int Localizar_Conta (int numero){
	for (int cont = 0; cont < CC.size(); cont++){
		Conta c = CC.get(cont);
		
		if (c.getNumero() == numero){								
			return cont;
		}
	}		
		return -1;
}
	
public String Criar (String nome, int numero, float saldo)  {
	if (CC.size() < 20){				
		int indice = Localizar_Conta(numero);				
		if (indice != -1){
			return "Conta corrente já existente, favor informar outro número.";
		}else {
	        CC.add(new Conta(nome, numero, saldo));			[b] [color=red]/*ERRO NESTA LINHA*/[/color][/b]	
			return "Operação realizada com sucesso!";
		}
	}else{
		return  "Número máximo de contas atingido!";
	}
}	
public String Cancelar (int numero){
	int indice = Localizar_Conta(numero);	
	if (indice != -1){
		CC.remove(indice);
		return "Conta cancelada!";
	}else{
		return "Conta não encontrada!";
	}				
}
public String Sacar (int numero, float valor){
	int indice = Localizar_Conta(numero);		
	if (indice != -1){
		Conta c = CC.get(indice);
     	c.sacar(valor);
			
	}
		
		if (valor < c.getSaldo()){  [b] [color=red]/*ERRO NESTA LINHA*/[/color][/b]
			c.sacar(valor);  [b] [color=red]/*ERRO NESTA LINHA*/[/color][/b]
			return "Saque realizado com sucesso!";
			
		}else{
			System.out.println("Saldo insuficiente.");
			System.out.println("Seu saldo disponível no momento é de R$" + c.getSaldo());  [b] [color=red]/*ERRO NESTA LINHA*/[/color][/b]
		}		
	
}
public void Depositar (int numero, float valor){
	int indice = Localizar_Conta(numero);
	if (indice != -1){
		Conta c = CC.get(indice);
		c.depositar(valor);
		System.out.println("O deposito foi concluido.");
		System.out.println("Seu saldo atual é de R$" + c.getSaldo());
	}else{
		System.out.println("Conta não encontrada!");
	}
}
public void Relatório (){
	for (Conta c : CC){
		System.out.println(c.Listar());
	}
}		

}

Velho, como vc mesmo disse que é iniciante gostaria só de dá uma dica de material: Oh, a Caelum tem umas apostilas muito boas pra quem tá começando. Digo isso pois seu código pode até funcionar mas tem muito código desnecessário. Digo, vc pode fazer as mesmas coisas escrevendo menos e com melhores práticas de programação, ou seja, usando o que a OO tem de melhor a oferecer. Por isso só uma dica.
Mas vamos ao problema: Velho, é o seguinte: Vc colocou a classe Conta como abstract, logo ela não vai poder ser instanciada. Então mude-a para public.
Outra coisa. O método Sacar está com problema no retorno. Deixe-o assim:
public String Sacar (int numero, float valor){
int indice = Localizar_Conta(numero);
if (indice != -1){
Conta c = CC.get(indice);
c.sacar(valor);

     	if (valor < c.getSaldo()){
			c.sacar(valor);
			return "Saque realizado com sucesso!";
			
		}else{
			return ("Saldo insuficiente.");
		}}	
	return null;	
	
}

Não testei o programa, mas pelo menos os erros que inicialmente estava aparecendo foram sanados.

Espero ter ajudado.
Bons estudos.
Abraços.

:smiley: Meu amigo RibeiroSGA muitissimo obrigado cara, tanto pela dica de estudo das apostilas da Caellum quanto da solução enviada, deu certinho, resolveu meu problema, compilei meu programa e rodou de boa, agora vou implementar algumas melhorias nele e “despoluir” meu codigo, se tiver mais duvidas posto aqui, mas a principio ta resolvido, obrigado irmão se cuida.

PS: OBRIGADO TAMBEM A TODOS QUE DE CERTA FORMA TENTARAM ME AJUDAR COM AS DICAS. ESPERO HUMILDEMENTE PODER FICAR FERA EM JAVA TAMBEM PARA PODER AJUDAR OUTROS INICIANTES!!! :smiley: :smiley: TENHAM UMA BOA NOITE!
[color=blue] [/color]

[b]Prezados amigos programadores java.

Estou com um outro pequeno probleminha, meu metodo Cancelar não esta cancelando, quando eu utilizo ele, é me retornado uma mensagem dizendo que a CONTA FOI CANCELADA COM SUCESSO, porem quando eu insiro o comando para [color=red]LISTAR CONTAS[/color], aparece a conta que acabei de cancelar, alguem pode me ajudar?
segue os blocos dos comando envolvidos abaixo;

FUNÇÃO CLASSE TESTE CANCELAR;

case 2:
System.out.println("\n 2 - Cancelar conta");
System.out.print("\n Informe o numero da conta: ");
numero = dados.nextInt();
agencia.Cancelar(numero);
System.out.println(“Cancelamento realizado com sucesso.”);
break;


METODO CANCELAR

public String Cancelar(int numero) {
int indice = Localizar_Conta(numero);
if (indice != -1) {
CC.remove(indice);
return “Conta cancelada!”;
} else {
return “Conta não encontrada!”;
}
}


METODO LISTAR CONTAS

public void Relatório() {
for (Conta c : CC) {
System.out.println(c.Listar());
}
}

----------------[/b]