This week's book giveaways are in the Refactoring and Agile forums. We're giving away four copies each of Re-engineering Legacy Software and Docker in Action and have the authors on-line! See this thread and this one for details.
Java 7 introduced the @SafeVarargs compiler annotation to suppress certain warning messages when invoking a varargs method (a method with a variable number of arguments). Also, as pointed out on Web pages such as "Changes in access of variables for generic classes in Java 7" (http://stackoverflow.com/questions/10782876/changes-in-access-of-variables-for-generic-classes-in-java-7), certain generics-oriented code that compiled under Java 6 no longer compiles under Java 7. As far as I know, this is the extent of generics changes.