added a comment - - edited
Fixed. "without special method" part of it is being fixed under
Explanation: Enum instances use anonymous inner classes to override the behavior defined at enum level.
Such inner classes for instances have enum class as their super class. The $INIT method for the enum was
not being made non-final and hence instance initializers($INIT) of the inner classes were
erroring out with "You are not allowed to overwrite the final method $INIT([Ljava.lang.Object; ) from class '...'"