First, the whole .NET thing (Or rather, the lack of cross-platform compatibility). Yes, Mono is pretty good, but nowhere near perfect. (Although note that this is changing).
And second, enums are hideous in C#. One of the few things Java does better than C#.