Você está na página 1de 2

1. Dadas as classes abaixo implemente conforme solicitado.

a) Implemente a classe abstrata Pessoa criando os mtodos abstratos cadastra e imprime. b) Implemente as classes concretas Professor e Aluno promovendo o uso do polimorfismo (sobrescrita) para implementar os mtodos abstratos herdados. c) Crie a interface Colecao conforme a figura. d) Implemente a classe ColecaoVetor de forma a implementar a interface Colecao. 2. Dado o diagrama abaixo, codifique-o.

3. Crie uma classe br.ifpi.bean.Contato contendo: a) Os atributos cpf (tipo String), nome (tipo String) e fone (tipo String). b) Dois construtores: um sem parmetros e outro com os parmetros cpf, nome e fone. c) Mtodos getters e setters para os atributos cpf, nome e fone. d) Mtodo toString() para retornar uma String que a concatenao dos atributos da classe.

4. Crie uma interface de nome br.ifpi.dao.ContatoDAO com os seguintes mtodos:

void insere(Contato c) insere um novo Contato. void atualiza(Contato c) atualiza um Contato. void exclui(String cpf) Remove um Contato existente. Contato busca(String cpf) Retorna um Contato com determinado CPF. List busca() - Retorna uma List com todos os Contatos. List buscaPorNome(String nome) Retorna uma List com todos os Contatos cujos nomes possuem a String nome em qualquer posio do nome.

5. Crie uma classe br.ifpi.dao.ContatoListDAO que implementa a interface ContatoDAO e contm: a) um atributo de nome contatos que uma List de Contatos. b) Um construtor que instancia um ArrayList e o atribui ao atributo contatos. c) A implementao dos mtodos da interface ContatoDAO.

6. Crie uma classe br.ifpi.Principal contendo um menu cujo mtodo main possui opes para: a) inserir contato b) obter um cpf e atualizar o contato que possui esse cpf c) obter um cpf e remover o contato que possui esse cpf d) obter um cpf e exibir o contato que possui esse cpf e) exibir todos os contatos f) obter uma String e exibir os contatos cujos nomes possuam essa String g) sair da aplicao.