Hi,
A number of interesting features have been added to the Java language in the 1.5 version, or Java 5 as it is referred to. The language level features are auto-boxing, foreach, enums, varargs, annotation, static imports, and generics.
Most of these features can be considered a progress. These improve the productivity of developers in cutting down verbose syntax and making code more intuitive.
The following figure shows my opinion on the usefulness of the features:
The five features are(foreach, varargs, auto-boxing, enum) are very good. Annotation is very useful, but we also have to figure out when and where to use it properly. Static import provides only marginal value benefits (and may also lead to poor code), and another feature is pretty bad.