Java Language Enum comme paramètre de type borné


Exemple

Lors de l'écriture d'une classe avec des génériques dans Java, il est possible de s'assurer que le paramètre type est une énumération. Comme toutes les énumérations étendent la classe Enum , la syntaxe suivante peut être utilisée.

public class Holder<T extends Enum<T>> {
    public final T value;

    public Holder(T init) {
        this.value = init;
    }
}

Dans cet exemple, le type T doit être un enum.