After listening to JavaPosse Episode 79 , I realised that I wasn't the only one to think that the new Java 5.0 language features are scary and challenging. The section was called "Were the Java 5 features a bad idea?" and the related links are : Shai's Weblog : Java 5.0 languages features were a bad idea JavaLobby: Java 5.0 language features ServerSide: Autoboxing and NPE My knowledge is still around Java 1.3.x level, and I'm learning slowly about the new features. Asserts look like a good Java 1.4/5.0 addition. The Java 5.0 additions that look good to me are : - for each syntax - handy and I wonder if faster due to the compiler knowing the bounds and not needing the array bounds checking ? Enums - they look really useful printf format - looks really good and powerful, better than the C one StringBuilder more robust collection framework not sure about boxing/unboxing - although at first glance looks okay generics - looks horrible & as complicated as C++ tem...