Prática mais simples I Utilizando a classe Automóvel abaixo, crie uma aplicação que amazene e mostre os dados de 2 automóveis. import javax.swing.JOptionPane; public class Automovel { private String marca, modelo; private int numeroCilindros; public Automovel(String modelo, String marca){ this.modelo = modelo; this.marca = marca; this.numeroCilindros = numeroCilindros; } public Automovel(){ } public void solicitaModelo(){ modelo = retornaString("o modelo"); } public void solicitaMarca(){ marca = retornaString("a marca"); } public void solicitaNumeroCilindros(){ int numeroCilindros = -1; for(;;){ try{ numeroCilindros = Integer.parseInt(JOptionPane.showInputDialog("Digite o numero de cilindros:")); if(numeroCilindros >=0) break; JOptionPane.showMessageDialog(null, "Valor negativo nao e permitido!\nDigite novamente!", "Mensagem de erro", JOptionPane.ERROR_MESSAGE); } catch (java.lang.NumberFormatException e) { // Catch any IO exceptions. JOptionPane.showMessageDialog(null, "Na foi digitado valor valido!\nDigite novamente!", "Mensagem de erro", JOptionPane.ERROR_MESSAGE); } } this.numeroCilindros = numeroCilindros; } public void solicitaDados(){ solicitaMarca(); solicitaModelo(); solicitaNumeroCilindros(); } public String retornaDados(){ String s="Dados cadastrados para o veiculo\n\nModelo:"; s += modelo + "\nMarca:" + marca + "\nNumero de cilindros:" + numeroCilindros; return s; } public void mostraDados(){ JOptionPane.showMessageDialog( null, retornaDados()); } private String retornaString(String mensagem){ String s=""; for(;;){ s = JOptionPane.showInputDialog("Digite " + mensagem); s = s.trim(); if(s.length() != 0) break; } return s; } } Prática mais simples II Implemente o programa em Java que: Ofereça as opções de menu: o Incluir cliente o Listar todos os clientes (Mostra os nomes com o respectivo saldo da CC como mostrado abaixo) Cecilia Campos Saldo: R$ 500,00 Patricia Silva Saldo: R$ 7.200,00 Na opção incluir cliente o sistema deverá pedir o nome e o depósito para a CC do novo cliente. Detalhes: Classe Cliente Classe ContaCorrente Possui nome e objeto da classe ContaCorrente possuir métodos: menu() que mostra opções de realizar deposito, realizar saque e mostrar saldo Prática mais sênior - 31 Out 2014 Implementar sistema bancário utilizando as classes abaixo. CLASSE AGENCIABANCARIA public void administraBanco(){ String s="", mensagem = "Opcoes de adiministracao da agencia - " + nomeDoBanco + "\n1-adicionar cliente\n2-visualizar clientes/contas correntes\n3-pesquisar conta\n4-gravar dados em arquivo\n5carregar dados de arquivo\n6-encerrar administracao da agencia"; int opcao=0; for(;;){ try{ s = JOptionPane.showInputDialog(mensagem); opcao = Integer.parseInt(s); switch(opcao){ case 1: adicionaCliente(); break; case 2: visualizaListaDeClientes(); break; case 3: procuraConta(); break; case 4: JOptionPane.showMessageDialog(null, "Opcao nao implementada!", "Alerta", JOptionPane.INFORMATION_MESSAGE); break; case 5: JOptionPane.showMessageDialog(null, "Opcao nao implementada!", "Alerta", JOptionPane.INFORMATION_MESSAGE); break; case 6: return; default: JOptionPane.showMessageDialog(null, "Na foi digitada opcao valida!\nDigite novamente!", "Mensagem de erro", JOptionPane.ERROR_MESSAGE); } } catch (java.lang.NumberFormatException e) { // Catch any IO exceptions. JOptionPane.showMessageDialog(null, "Na foi digitada opcao valida!\nDigite novamente!", "Mensagem de erro", JOptionPane.ERROR_MESSAGE); } } CLASSE CLIENTE package banking; import java.util.*; import java.text.DecimalFormat; import javax.swing.JOptionPane; public class Cliente extends Pessoa{ private ArrayList contasCorrente, aplicacoesFinanceira, emprestimos; public Cliente(){ contasCorrente = new ArrayList(); } public void solicitaDados() { super.solicitaDados(); } public void administraCliente(){ String s="", mensagem = "Cliente:" + retornaNome() +"\n\nOpcoes de adiministracao do cliente\n1alterar nome do cliente\n2-adicionar conta\n3-ver dados das contas\n4-encerrar administracao do cliente"; int opcao=0; for(;;){ try{ s = JOptionPane.showInputDialog(mensagem); opcao = Integer.parseInt(s); switch(opcao){ case 1: super.solicitaNome(); break; case 2: adicionaCC(); break; case 3: imprimeTodosOsDados(); break; case 4: return; } } catch (java.lang.NumberFormatException e) { // Catch any IO exceptions. JOptionPane.showMessageDialog(null, "Na foi digitada opcao valida!\nDigite novamente!", "Mensagem de erro", JOptionPane.ERROR_MESSAGE); } } } public Cliente(String nome, String RG){ super(nome, RG); contasCorrente = new ArrayList(); } public void adicionaCC() { ContaCorrente conta = new ContaCorrente(); conta.administraConta();//"do cliente " + super.nome); contasCorrente.add(conta); } public String retornacontasCorrentesXK(){ ContaCorrente cc; String contas=""; DecimalFormat doisDigitos = new DecimalFormat("0.00"); for(int m=0; m<contasCorrente.size(); m++){ System.out.println("\nDados da pessoa " + (m+1)); cc = (ContaCorrente) contasCorrente.get(m); contas += " cc:" + cc.retornaNumeroDaConta() +"(R$)"+ doisDigitos.format(cc.retornaSaldo()); } return contas; } public ContaCorrente retornaContaCorrente(int numeroDaConta){ //caso encontre conta corrente com o numero indicado, retorna a mesma //caso contrario, retorna null ContaCorrente cc = new ContaCorrente(); for(int m=0; m<contasCorrente.size(); m++){ cc = (ContaCorrente) contasCorrente.get(m); if(cc.retornaNumeroDaConta() == numeroDaConta) return cc; } return null; } public void imprimeTodosOsDados() { ContaCorrente cc; super.imprimeTodosOsDados(); for(int m=0; m<contasCorrente.size(); m++){ System.out.println("\nDados da pessoa " + (m+1)); cc = (ContaCorrente) contasCorrente.get(m); cc.mostraDadosDaConta(); } } } CLASSE CONTACORRENTE public void administraConta(){//String message){" + message + " String s="", mensagem = "Opcoes de adiministracao da conta:" + numeroDaContaCorrente + "\n1realizar deposito\n2-realizar saque\n3-ver dados da conta\n4-encerrar administracao da conta"; int opcao=0; for(;;){ try{ s = JOptionPane.showInputDialog(mensagem); opcao = Integer.parseInt(s); switch(opcao){ case 1: realizaDeposito(); break; case 2: realizaSaque(); break; case 3: mostraDadosDaConta(); break; case 4: return; default: JOptionPane.showMessageDialog(null, "Na foi digitada opcao valida!\nDigite novamente!", "Mensagem de erro", JOptionPane.ERROR_MESSAGE); } } catch (java.lang.NumberFormatException e) { // Catch any IO exceptions. JOptionPane.showMessageDialog(null, "Na foi digitada opcao valida!\nDigite novamente!", "Mensagem de erro", JOptionPane.ERROR_MESSAGE); } }