Sistema de banco digital desenvolvido em Java, com operações bancárias completas via terminal. Projeto de estudo pessoal com foco na prática de Programação Orientada a Objetos, aplicando herança, polimorfismo e interfaces em um cenário real e funcional.
Consolidar os fundamentos do Java através de um projeto prático que simula o funcionamento de um banco digital — desde a criação de contas até operações financeiras como depósito, saque, transferência e consulta de extrato.
- 🏷️ Criação de conta corrente e conta poupança
- 💰 Depósito de valores
- 💸 Saque com validação de saldo
- 🔄 Transferência entre contas
- 📄 Consulta de extrato com histórico de operações
- 🖥️ Menu interativo via terminal para navegação entre as opções
O projeto foi estruturado com foco em boas práticas de Programação Orientada a Objetos:
| Conceito | Aplicação no projeto |
|---|---|
| Herança | ContaCorrente e ContaPoupanca herdam de uma classe base Conta |
| Polimorfismo | Operações bancárias tratadas de forma genérica via referência da superclasse |
| Interfaces | Contrato comum para definir o comportamento das operações financeiras |
| Tratamento de exceções | Validações de saldo insuficiente, conta inexistente e entradas inválidas |
| Encapsulamento | Atributos privados com acesso controlado via getters/setters |
BancoDigitalJava/
├── src/
│ ├── model/
│ │ ├── Conta.java # Classe base abstrata
│ │ ├── ContaCorrente.java # Conta corrente (herda Conta)
│ │ └── ContaPoupanca.java # Conta poupança (herda Conta)
│ ├── service/
│ │ └── Banco.java # Regras de negócio e gerenciamento de contas
│ ├── interfaces/
│ │ └── IConta.java # Interface com contrato das operações
│ └── Main.java # Menu interativo e ponto de entrada
└── README.md
| Tecnologia | Uso |
|---|---|
| Java | Linguagem principal de desenvolvimento |
| POO | Herança, polimorfismo, interfaces e encapsulamento |
| Scanner | Entrada de dados via terminal |
| Git / GitHub | Versionamento de código |
- JDK 11+ instalado
- Terminal ou IDE (IntelliJ IDEA, Eclipse, VS Code)
1. Clone o repositório
git clone https://github.com/GuiMRDS/BancoDigitalJava.git
cd BancoDigitalJava2. Compile o projeto
javac -d bin src/**/*.java src/Main.java3. Execute
java -cp bin MainOu abra o projeto diretamente na sua IDE e execute a classe
Main.java.
===========================
🏦 BANCO DIGITAL
===========================
1 - Criar Conta Corrente
2 - Criar Conta Poupança
3 - Depositar
4 - Sacar
5 - Transferir
6 - Extrato
0 - Sair
===========================
Escolha uma opção: _
- Criação de hierarquia de classes com herança e sobrescrita de métodos
- Definição e implementação de interfaces como contrato de comportamento
- Uso de polimorfismo para tratar diferentes tipos de conta de forma genérica
- Tratamento de exceções para garantir robustez nas operações
- Organização do código em pacotes (model, service, interfaces)
- Menu interativo no terminal com controle de fluxo e validação de entrada
Guilherme Marinho
Este projeto foi desenvolvido para fins de estudo e prática de Java.