TrabalhoBanco Final

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 4

Documentação do Trabalho de Orientação a Objetos - Sistema Bancário

1. Informações Gerais

Este trabalho foi desenvolvido na disciplina de Orientação a Objetos e consiste na implementação

de um sistema bancário. O sistema permite gerenciar clientes, contas correntes e poupança, além

de realizar transações bancárias. O código foi escrito em Java e está estruturado em diferentes

classes e pacotes para promover a modularização e a reutilização de código.

2. Estrutura do Projeto

O projeto está organizado da seguinte forma:

- Banco: Diretório principal contendo arquivos de configuração e o código-fonte.

- src: Diretório com o código-fonte.

- main: Código principal, organizado em pacotes.

- org.example: Pacote onde se encontram as classes que implementam o sistema bancário. Essas

classes são descritas a seguir.

3. Principais Classes do Sistema

As classes principais do sistema estão localizadas no pacote org.example. Abaixo estão as

descrições detalhadas das principais classes:

- Cliente.java: Esta classe representa os clientes do banco. Ela contém atributos para armazenar

informações pessoais como nome, CPF e data de nascimento. A classe também está relacionada a

uma ou mais contas bancárias associadas ao cliente.

- Conta.java: Classe abstrata que serve como base para as classes de Conta Corrente e Conta

Poupança. Ela define os atributos e métodos comuns a todas as contas, como o saldo e as

operações de depósito e saque.


- CCorrente.java: Herda da classe Conta e representa uma conta corrente. Adiciona

funcionalidades específicas como limites de crédito e taxa de manutenção.

- CPoupanca.java: Herda da classe Conta e representa uma conta poupança. Inclui atributos e

métodos relacionados ao rendimento mensal, baseado em juros.

- Transacao.java: Classe responsável por modelar as transações bancárias, como transferências

entre contas, depósitos e saques. Cada transação registra informações como valor, data e as

contas envolvidas.

- Gerente.java: Esta classe representa o gerente do banco, que tem permissões para gerenciar

contas, aprovar transações e acessar relatórios gerenciais.

- CPF.java: Implementa validação e armazenamento do CPF (Cadastro de Pessoa Física), com

regras de validação para garantir que o formato do CPF esteja correto.

4. Tratamento de Exceções

O sistema implementa um tratamento robusto de exceções para lidar com dados incorretos ou mal

formatados. As seguintes exceções específicas foram definidas:

- CPFException.java: Lança uma exceção quando o CPF fornecido é inválido, seja por causa do

formato ou por não atender às regras de validação.

- DataNascimentoException.java: Lança exceção para datas de nascimento inválidas, garantindo

que o cliente forneça uma data de nascimento plausível.

- FormatoException.java: Trata exceções relacionadas a formatos incorretos em dados fornecidos

pelo usuário, como entradas alfanuméricas em campos que exigem números.

5. Interfaces de Usuário
O sistema bancário inclui uma interface gráfica (GUI) desenvolvida para facilitar a interação com o

usuário. As principais classes responsáveis pela interface são:

- UserInterface.java: Classe que gerencia a interface de interação com o usuário. Ela fornece telas

para acessar funcionalidades como consulta de saldo, transferências e saques.

- InterfaceGerente.java: Fornece uma interface exclusiva para o gerente, permitindo a ele acessar

funções administrativas e gerenciar contas de clientes.

- SingUp.java: Implementa a tela de cadastro, onde novos usuários podem criar contas no sistema.

Valida os dados inseridos antes de efetuar o cadastro.

6. Informações de Login do Gerente

No arquivo 'gerente.txt', estão armazenados os dados de login do gerente, necessários para

acessar a interface administrativa. Os dados de login são os seguintes:

- CPF: 126.934.246-07

- Senha: 1234

7. Alunos Desenvolvedores

Este trabalho foi desenvolvido pelos seguintes alunos:

- Pedro Nitzsche Mesquita Garbois - Matrícula: 202076025

- Rafael Rosa Machado Gawryszewski - Matrícula: 202365055A

- Yury Vieira Marques Oliveira - Matrícula: 202270040

- Felipe Gotelip Delgado - Matrícula: 202365501B

8. Considerações Finais

Este sistema bancário foi projetado seguindo os princípios de Orientação a Objetos, utilizando

conceitos como herança, polimorfismo e encapsulamento. O código é modular e extensível,

permitindo futuras implementações de novas funcionalidades como novos tipos de contas, sistemas

de crédito e relatórios gerenciais. O tratamento de exceções e a validação de dados garantem


maior robustez e segurança ao sistema, evitando erros comuns ao lidar com informações críticas

como CPF e transações financeiras.

Você também pode gostar