Java SE upgrade

Java has evolved over 25 years with a lot of new features. Since Java SE 9 (9/2017), newer Java versions now follow every 6 months. Some of them are classified as Long Term Support (LTS) versions like V11 and V17.

The core Java language has received the power of functional programming, with the so called lambda expressions. These additions are aimed at making Java development even easier ('Ease of development') and more powerful. Additionally, libraries were added or enhanced for date/time processing, streaming, use of records, ... .

The goal of this course is to provide an overview of the 'new' Java language features since Java SE 8 and give the opportunity to try them out yourself.


No public sessions are currently scheduled. We will be pleased to set up an on-site course or to schedule an extra public session (in case of a sufficient number of candidates). Interested? Please let us know.

Intended for

Current Java developers who wish to gain an insight in and practice with the new features that are available since Java SE 8.


The participants should have experience (at least 3 months) with Java programming (see course Java programming).

Main topics

  • functional programming with lambda expressions (closures)
  • language improvements to Java
  • repeatable annotations
  • switch clauses and switch expressions
  • text blocks
  • pattern matching (for instanceof and switch)
  • optional data type
  • type inference - keyword var
  • interfaces with default, static and private methods
  • sealed classes
  • helpful NullPointerExceptions
  • Stream interface for use in collection processing
  • String API enhancements
  • Java records - constructors - object serialization
  • Other improvements
  • Java modules (since Java 9)
  • JRE improvements - Z Garbage Collector - JVM
  • JShell - run source files
  • packaging tool jpackage

Training method

After explanation of the mentioned features, time will be given to experiment with the new language constructs and libraries. Emphasis is on the code changes with respect to the pre-8 Java language.


1 day.

Course leader

Sandy Schillebeeckx.

Also interesting

Enrollees for this training also took the following courses: