Joshua Bloch and Neal Gafter's recent JavaLive chat further talks on generics and typesafe enums, 2 of the more significant new language features in the Java 1.5. There is interesting discussion on generics especially.

My favorite though is the enhanced for loop which is similar to the foreach construct in languages like PHP and Python.

The following example reads "for each Object in the Collection C...":


void displayAll(Collection c) {
for (Object o : c)
((String)o).display();
}

I've always found the Java (and C/C++) for-loop idiom to be overly wordy and reduces code legibility, so this is a welcome addition.

Related links:
Previous interview with Joshua Bloch