Question: why enum over constants in java?
Answer: Benefits of using Enums in Java 1) Enum is type-safe you can not assign anything else other than predefined Enum constants to an Enum variable. It is a compiler error to assign something else, unlike the public static final variables used in Enum int pattern and Enum String pattern.