1. Java enums
2. Java's generics, especially covariance/contravariance with wildcards (erasure really isn't as bad as people make it out to be)
3. Java's standard collections library
4. Java's method override rules (lets you extend return types on derived classes)
5. Default interface methods (.Net has them too now, but Java was first)
6. @Functional interfaces. They may seem a bit funny at first, but they are very useful (especially when combined with default interface methods)