Colecções de Objectos/Registo de Gatos

From Wiki**3

< Colecções de Objectos
Revision as of 08:43, 3 October 2024 by Root (talk | contribs) (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...")

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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

Diagrama UML

File:Catregistry-uml.png

Código da Solução

Classe DuplicateCatException
Classe NoSuchCatException
Classe CatRegistry