Curso Java Prof. Júlio Machado 1) Implemente as classes indicadas no diagrama abaixo. Garanta o comportamento correto de cada método indicado pelo uso correto dos conceitos de herança. 2) Dada a implementação das classes do exercício anterior, construa uma classe que representa um cadastro de contas (utilizando polimorfismo para suportar ContaCorrente e ContaPoupanca) de um sistema bancário de acordo com a interface apresentada a seguir. Utilize uma coleção de Java para implementar o cadastro em memória. 3) Altere a classe Cofrinho do exercício da lista Exercicios2 para que os métodos de busca da menor moeda e do menor valor façam uso do método Collections.min. Lembre-se que será necessário alterar a classe Moeda para atender o contrato desse método de busca. 4) Altere a classe Cofrinho de modo que ela possa ser utilizada com o comando for do tipo “para-cada”, ou seja, implemente a interface Iterable.