This document summarizes some of the new features being introduced in JDK 9. It discusses convenience factory methods being added for collections to simplify creation of immutable collections. New stream APIs like dropWhile and takeWhile are added to filter streams based on predicates. Additional changes include improved iteration capabilities, new methods for Optional, and language changes such as underscores being reserved and allowing private methods in interfaces. The adoption of the Reactive Streams specification is also covered to help improve asynchronous programming.