This document discusses new features in Java 8 including extension methods, lambda expressions, and single abstract method (SAM) types. Extension methods allow adding new methods to existing interfaces without breaking binary compatibility. Lambda expressions provide a concise way to pass functionality as an argument to methods. SAM types allow lambda expressions to be passed to interfaces with a single abstract method. These features together enable more readable sorting and threading code in Java.