Enums are just (special) classes, so you can add methods and other declarations to them. If you do that, you need the semi-colon first.
Here's an example.
Here, I've got an enum with a private member, an accessor (getter) for it, and a constructor to set the value. You need the semi-colon so the compiler can tell where the enum values end and the rest of the class description begins.
Joined: Aug 30, 2010
You can see that after the declaration of the members (RED, GREEN, BLUE) follows a method declaration (here the toString() method).
Here is another example:
Again here follows after the declaration of the members another declaration (here the constructor).