2
Engenharia de Software
UMG
12
Engenharia de Software
UMG
2
Engenharia de Software
UMG
4
Engenharia de Software
UMG
9
Engenharia de Software
UMG
4
Engenharia de Software
UMG
2
Engenharia de Software
UMG
2
Engenharia de Software
UMG
1
Engenharia de Software
UMG
6
Engenharia de Software
UMG
Texto de pré-visualização
Exame Final das disciplinas de Desenvolvimento Orientado a Objetos Projetos Orientado a Objetos Instruções Prova individual com tempo de execução até as 2040 do dia 08072025 É proibido o uso de inteligência artificial tanto dentro quanto fora da IDE interface de desenvolvimento pesquisas no google e intelisense da IDE são permitidas Caso o aluno seja pego usando serviços de inteligência artificial seu exame será zerado Os alunos deverão comprimir as classes desenvolvidasarquivos java em um arquivo zip e enviar no email samuelbabinskifagedubr até o tempo final da prova Critérios de avaliação totalizando 10 pontos Uso correto das heranças e relações entre classes aplicação de encapsulamento e construtores 20 pontos Implementação da composição entre as classes 10 ponto Uso de lista ArrayList para armazenar os agendamentos 10 ponto Aplicação de polimorfismo 10 ponto Entrada e saída de dados via JOptionPane 10 ponto Exibição das informações filtradas com StreamAPI10 ponto Tratativas de Exception 10 ponto Organização geral do código e funcionamento completo do sistema 20 pontos Exercício Você deverá desenvolver uma aplicação em Java que simula o funcionamento de um sistema de agendamento de serviços em um petshop A aplicação deve conter uma superclasse chamada Pessoa com os atributos nome e cpf além dos métodos construtor getters e setters e um exibirInformacoes abstrato A partir dessa superclasse devem ser criadas duas subclasses a classe Cliente que representa um cliente do petshop e possui também o atributo telefone e a classe Funcionario que representa os funcionários e inclui o atributo cargo Ambas devem sobrescrever o método exibirInformacoes para mostrar seus respectivos dados A aplicação também deve incluir a classe Pet com os atributos nome raca e um objeto do tipo Cliente representando o dono do animal Essa classe deve ter um método exibirInformacoes que exiba os dados do pet e do seu dono Para registrar os serviços realizados você deverá criar a classe Agendamento que associa um Pet a um Funcionario além de conter a data do serviço em formato ddmmaaaa o valor cobrado e se o mesmo foi concluído Essa classe também deve implementar um método exibirInformacoes para mostrar os dados do agendamento Todos os agendamentos devem ser armazenados em uma classe Petshop que deve possuir uma lista ArrayList de agendamentos e os métodos adicionarAgendamento e listarAgendamentosPendentes sendo este último responsável por exibir todos os agendamentos não conlcuídos usando StreamAPI No método main o aluno deverá criar uma instância da classe Cliente preenchendo seus dados com JOptionPane depois um Pet associado a esse cliente e um Funcionario A seguir deverão ser criados pelo menos dois agendamentos informando a data e o valor por meio do JOptionPane e adicionados a um objeto da classe Petshop O programa deve verificar se o valor retornado é null cancelado ou uma String vazia Caso isso aconteça o sistema deve lançar uma exceção do tipo IllegalArgumentException com uma mensagem explicando que o campo é obrigatório Ao final o programa deverá listar os agendamentos pendentes na tela utilizando JoptionPaneshowMessageDialog
2
Engenharia de Software
UMG
12
Engenharia de Software
UMG
2
Engenharia de Software
UMG
4
Engenharia de Software
UMG
9
Engenharia de Software
UMG
4
Engenharia de Software
UMG
2
Engenharia de Software
UMG
2
Engenharia de Software
UMG
1
Engenharia de Software
UMG
6
Engenharia de Software
UMG
Texto de pré-visualização
Exame Final das disciplinas de Desenvolvimento Orientado a Objetos Projetos Orientado a Objetos Instruções Prova individual com tempo de execução até as 2040 do dia 08072025 É proibido o uso de inteligência artificial tanto dentro quanto fora da IDE interface de desenvolvimento pesquisas no google e intelisense da IDE são permitidas Caso o aluno seja pego usando serviços de inteligência artificial seu exame será zerado Os alunos deverão comprimir as classes desenvolvidasarquivos java em um arquivo zip e enviar no email samuelbabinskifagedubr até o tempo final da prova Critérios de avaliação totalizando 10 pontos Uso correto das heranças e relações entre classes aplicação de encapsulamento e construtores 20 pontos Implementação da composição entre as classes 10 ponto Uso de lista ArrayList para armazenar os agendamentos 10 ponto Aplicação de polimorfismo 10 ponto Entrada e saída de dados via JOptionPane 10 ponto Exibição das informações filtradas com StreamAPI10 ponto Tratativas de Exception 10 ponto Organização geral do código e funcionamento completo do sistema 20 pontos Exercício Você deverá desenvolver uma aplicação em Java que simula o funcionamento de um sistema de agendamento de serviços em um petshop A aplicação deve conter uma superclasse chamada Pessoa com os atributos nome e cpf além dos métodos construtor getters e setters e um exibirInformacoes abstrato A partir dessa superclasse devem ser criadas duas subclasses a classe Cliente que representa um cliente do petshop e possui também o atributo telefone e a classe Funcionario que representa os funcionários e inclui o atributo cargo Ambas devem sobrescrever o método exibirInformacoes para mostrar seus respectivos dados A aplicação também deve incluir a classe Pet com os atributos nome raca e um objeto do tipo Cliente representando o dono do animal Essa classe deve ter um método exibirInformacoes que exiba os dados do pet e do seu dono Para registrar os serviços realizados você deverá criar a classe Agendamento que associa um Pet a um Funcionario além de conter a data do serviço em formato ddmmaaaa o valor cobrado e se o mesmo foi concluído Essa classe também deve implementar um método exibirInformacoes para mostrar os dados do agendamento Todos os agendamentos devem ser armazenados em uma classe Petshop que deve possuir uma lista ArrayList de agendamentos e os métodos adicionarAgendamento e listarAgendamentosPendentes sendo este último responsável por exibir todos os agendamentos não conlcuídos usando StreamAPI No método main o aluno deverá criar uma instância da classe Cliente preenchendo seus dados com JOptionPane depois um Pet associado a esse cliente e um Funcionario A seguir deverão ser criados pelo menos dois agendamentos informando a data e o valor por meio do JOptionPane e adicionados a um objeto da classe Petshop O programa deve verificar se o valor retornado é null cancelado ou uma String vazia Caso isso aconteça o sistema deve lançar uma exceção do tipo IllegalArgumentException com uma mensagem explicando que o campo é obrigatório Ao final o programa deverá listar os agendamentos pendentes na tela utilizando JoptionPaneshowMessageDialog