Better languages allow fallible programmers to be more productive. Java is not cast in stone, so perhaps some of these complaints can be addressed, if not in Java then in Java2. In any case, whether fixed or not, awareness is a big step toward avoidance; so read on!
void DoIt(myChoice choice) { ... }
Adding to the insult of this choice, switch statements cannot
use myChoice instances as cases.
void DoIt(int choice) { ...}
of course, any old "int" will be acceptable, not just one of the expected choice constants, so beware!