Java 9 to 11

A 1 to 2-day course on Java 9 to 11: From new language features, APIs, and JVM capabilities to migration challenges, JDK distributions, and the 6-month release cycle

This course teaches everything a Java developer needs to know when starting to work with Java 11: It introduces new language features, new and updated APIs, JVM improvements, and the essentials of the Java module system (for a deeper dive, there's a separate course). All of these topics are taught with theoretical introductions, practical exercises, and usage recommendations.

Beyond introducing everything new in Java 9 to 11, this course also teaches how to overcome migration challenges and discusses the six-month release cadence as well as licensing/support of JVM distributions.

Java developers who want to start using Java 11
Good Java 8 skills, particularly a solid understanding of lambdas
1-2 days


After completing this course, participants will be able to:

  • assess and perform a project's migration from Java 8 to 11
  • determine a Java update strategy and pick a JDK distribution that fits their project
  • use new language features to write more readable and maintainable code
  • use new and improved APIs to their full effect
  • understand what the module system has to offer
  • improve their projects with new JVM features


  • migration from Java 8 to 11
  • release cadence, distributions, and support
  • new language features like var and private interface methods
  • new APIs like collection factories, reactive streams, and the reactive HTTP/2 client
  • updated APIs like Stream, Optional and OS processes
  • Java module system basics
  • new JVM-Features like scripting support, unified logging, and multi-release JARs
  • performance improvements like application class-data sharing

Upcoming Public Sessions

While I mostly provide these courses in-house, there's the occasional public session that everybody can attend. None are planned now, but if you get in touch, I'll let you know when that changes.

Past Public Sessions