I, and a number of other developers, have been working on a suite of DateTime modules for Perl for the last few months. When I first started that project, I remember looking at Java's date classes in an effort to find a good model and thinking that it looked pretty awful, but that maybe it wasn't so bad, because I don't really know much Java.
This article confirms my original opinion that the Java date and time classes really _are_ a steaming pile. For those who'd like to see a better way, take a look at the Perl DateTime project.
At least maybe it'll give someone some ideas for how to do things better in an alternate Java datetime library. My project is not necessarily the only way to do this properly, but it's sure a lot better than what Java has now!