Difference between revisions of "Colecções de Objectos/Registo de Gatos"

From Wiki**3

< Colecções de Objectos
(Created page with "= Problema = Modele em UML (incluindo construtores) e implemente em Java uma classe '''CatRegistry''' cujas instâncias registam gatos (classe '''Cat'''). A classe '''CatRegis...")
(No difference)

Revision as of 09:43, 3 October 2024

Problema

Modele em UML (incluindo construtores) e implemente em Java uma classe CatRegistry cujas instâncias registam gatos (classe Cat). A classe CatRegistry deve manter um mapa de gatos, indexando-os pelos respectivos nomes. Não é necessário implementar a classe Cat. Considere que a classe Cat tem atributos idade (age) e nome (name). Considere ainda que o construtor de Cat aceita os valores para os atributos mencionados e que os métodos de acesso (getters e setters) estão definidos.

A interface da classe CatRegistry contém os métodos de inserção (put) e consulta (get). O primeiro (put) aceita um gato e regista-o (se o nome do gato já tiver sido usado – por um gato com esse nome já existir no mapa – deve lançar a excepção DuplicateCatException); o segundo (get) aceita o nome de um gato e devolve o gato com esse nome a partir do mapa, caso exista, ou lança uma excepção (NoSuchCatException), se não existir.

Diagrama UML

[Expand] Diagrama UML

File:Catregistry-uml.png

Código da Solução

[Expand] Classe DuplicateCatException
[Expand] Classe NoSuchCatException
[Expand] Classe CatRegistry