public sealed interface MonInterface permits MonEnum, MaClasse {}
public enum MonEnum implements MonInterface { PAIRE, IMPAIRE }
public final class MaClasse implements MonInterface {}
// ...
static void traiter(MonInterface c) {
switch (c) {
// case MonEnum e when e == MonEnum.PAIRE -> { System.out.println("Paire"); }
case MonEnum.PAIRE -> { System.out.println("Paire"); }
case MonEnum.IMPAIRE -> { System.out.println("Impaire"); }
case MonEnum e -> { System.out.println("MonEnum"); }
case MaClasse mc -> { System.out.println("MaClasse"); }
}
}