Essendo una prova d'esame viene fornito solo il test e lo studente deve scrivere delle classi che funzionino con quel test, a prescindere dal fatto che quello che fa non sia particolarmente utile.
Se osservi bene tutto è deducibile dal test. Se non lo fosse non sarebbe una prova d'esame.
Se nel test trovo "assert h1 instanceofList"non posso far altro che adeguarmi e se Hotel extends ArrayList fa funzionare il test ho raggiunto il mio scopo.
Comunque confrontandomi anche con colleghi ho trovato la soluzione. Era più semplice di quanto immaginassi.
Mi ero fissato sul fatto che dovessi per forza implementare un enum ed invece bastava dichiarare nella classe Room quelle 4 costanti e far prendere un int al costruttore di Room.
In questo modo:
Mi resta il dubbio che si possa ancora fare implementando un enum.codice:public class Room { public final static int SINGLE_ROOM=1, DOUBLE_ROOM=2, TWIN_ROOM=2, SUITE_ROOM=4; private int size; public Room(int size){ this.size=size; } ...
Se vuoi ti passo l'intero test così mi dai un'opinione sul fatto che si possa risolvere tutto in 60 minuti.
Grazie comunque per la risposta.