S enumem to nemá vůbec nic společného, když použijete jakoukoli jinou třídu,
bude se to chovat stejně.
Právě od toho jsou v Javě typové parametry tříd. Nadefinujte Round jako Round<E
extends Enum<E>>, a pak použijte jako parametr metody typ E. S tou
metoduo getPossibleTransitions()
to fungovat nebude, protože tam máte pole – ale to máte za to, že používáte
pole místo kolekce. Takže upravit byste to celé mohl např. takhle:
public abstract class Round<E extends Enum<E>> {
abstract public Set<E> getPossibleTransitions();
abstract public boolean doTransition(E transition);
}
S pozdravem
Filip Jirsák
Dne 21. srpna 2011 15:36 Libor Jelinek <[email protected]> napsal(a):
> Aha, pořád se je co učit a objevovat. Takže tedy zkrátka a dobře toho
> mého docílit nelze s Enumem ani kdybych se na hlavu stavěl?
>
>