Este repositório contém a implementação do Trabalho Final da disciplina de Programação Orientada a Objetos (POO), ministrada pelo professor Daniel Callegari.
Sistema de gerenciamento de academia, permitindo o cadastro, controle de treino, e gerenciamento de funcionários e alunos. A aplicação conta com controle de liberação de acesso, estatísticas e interface gráfica com Java Swing.
Este projeto tem como principais objetivos:
- Aplicar os conceitos de herança e polimorfismo
- Utilizar programação orientada a eventos
- Implementar coleções em memória e utilizar programação funcional
- Construir uma interface gráfica com Java Swing
- Desenvolver uma solução modular com boas práticas de codificação
-
Interface Gráfica:
- Implementada com Java Swing
- Janela principal (
Teste.java) - Telas de visualização, cadastro, estatísticas e painel do caixa
-
Entidades e Hierarquia de Classes:
Pessoa(superclasse)AlunoFuncionario(classe abstrata)FuncionarioCaixaFuncionarioProfessor
- Outras classes:
Academia(classe de controle geral)TreinoeExercicio(ligados aos alunos)
-
Coleções:
- Objetos armazenados em memória com
List<> - Sem persistência em arquivos ou banco de dados
- Objetos armazenados em memória com
-
Estatísticas Exibidas:
- Total de cadastros e por tipo (Aluno, Funcionário)
- Soma dos valores pagos pelos alunos
- Média de idade dos alunos
-
Funcionalidade Extra:
- O caixa (representado pela classe
FuncionarioCaixa) deve liberar o aluno antes que ele possa iniciar o treino. - Sem liberação, o aluno é impedido de treinar, garantindo controle de acesso.
- O caixa (representado pela classe
- Cadastro de alunos e funcionários
- Busca por nome
- Visualização de todos os cadastros
- Painel de estatísticas (contagem, soma e média)
- Controle de liberação pelo caixa antes do treino (funcionalidade extra)
- Interface gráfica com botões, campos e ações interativas
- ❌ Não há uso de banco de dados nem arquivos para persistência
- ✅ Todos os dados residem somente em memória RAM durante a execução
- ✅ O sistema já inicia com dados de exemplo prontos para testes
- Java 17+
- Java Swing
- Programação Orientada a Objetos
- Classes abstratas, herança, polimorfismo
- Lambda Expressions e Stream API
| Critério | Pontuação |
|---|---|
| Entidades de domínio bem definidas | 2,5 |
| Interface gráfica funcional | 2,5 |
| Funcionalidades requeridas completas | 4,0 |
| Qualidade geral do código | 1,0 |
| Total | 10,0 |
- Clone o repositório:
git clone https://github.com/emivargxs/sistema-academia-poo.git