Programação Orientada a Objetos
Conteúdo: Polimorfismo, Classes Abstratas e Interfaces.
Atividade 1 – Java: Polimorfismo
Tema: Sistema de Transporte Urbano Inteligente
• Crie uma classe base chamada Transporte contendo: código, capacidadePassageiros e
velocidadeMedia.
• Crie as subclasses: Onibus, Metro, BicicletaCompartilhada e PatineteEletrico.
• Implemente o método calcularTempoPercurso(double distancia).
• Regras: Ônibus sofre acréscimo de 20% por trânsito; Metrô mantém velocidade
constante; Bicicleta pode reduzir velocidade em subidas; Patinete possui limite máximo
de bateria.
• No main: cadastre ao menos 5 transportes, solicite uma distância ao usuário, exiba o
tempo estimado para cada transporte e mostre qual é o mais rápido.
• Objetivos: herança, polimorfismo, listas e tomada de decisão.
Atividade 2 – Java: Classes Abstratas
Tema: Sistema Acadêmico de Avaliações
• Crie uma classe abstrata chamada Avaliacao com atributos: nomeAluno, disciplina e
notaMaxima.
• Crie métodos abstratos: calcularNotaFinal() e verificarAprovacao().
• Crie as subclasses: ProvaObjetiva, TrabalhoPratico, Seminario e ProjetoFinal.
• Regras: Prova objetiva usa percentual de acertos; Trabalho prático usa nota + bônus por
entrega antecipada; Seminário usa apresentação + participação; Projeto final usa média
entre documentação, código e apresentação.
• No main: cadastre avaliações, exiba nota final de cada aluno, informe aprovados e
reprovados e mostre a maior nota da turma.
• Objetivos: classes abstratas, especialização e regras de negócio.
Atividade 3 – Java: Interfaces
Tema: Sistema de Pagamentos Digitais
• Crie uma interface chamada Pagamento com métodos: realizarPagamento(double
valor), cancelarPagamento() e emitirComprovante().
• Crie as classes: CartaoCredito, Pix, Boleto e CarteiraDigital.
• Comportamentos: Cartão pode parcelar; Pix aprova instantaneamente; Boleto gera
vencimento; Carteira digital pode aplicar cashback.
• Crie também a interface Autenticavel com método autenticarSenha().
• No main: simule compras, escolha forma de pagamento, gere comprovantes e exiba total
arrecadado.
• Objetivos: interfaces múltiplas, organização modular e simulação real.