Major extensions to the language and the JDK
have been added with recent Java releases- most prominently "Lambdas &
Streams" in Java 8 and the Module System in Java 9.
The new language features include lambda expressions and method references
as well as default and static interface methods. In this seminar
attendants will gain an overview of the new language features and will
practice their use in hand-on labs.
Mastering lambdas is the prerequisite for successfully using streams.
Streams are an extension to the JDK collection framework. They provide
a functional API for sequential and parallel bulk operations on sequences
of elements. The seminar provides an overview of the stream API from basics
such as filter-map-reduce to advanced operations such as user-defined stream
sources. Attendants will practice the use of streams in numerous
The seminar gives an overview of the Date/Time API, which replaces old
classes such a Date and Calendar.
The most prominent addition to Java 9 is the module system. It
provides an encapsulation mechanism on top of packages. Beginning
with Java 9 the community is encouraged to modularize all application,
libraries and frameworks. The seminar discusses migration strategies,
explains module descriptors, the difference between named, unnamed and
automatic modules, issues with deep reflection, and new tools such as jdeps
Working knowledge of Java; in-depth experience
with Java not required.
Workshops and hands-on labs
This is a course for Java programmers who need an overview of new core
features of Java 8 and 9 and strive for a thorough understanding of the
key features, namely lambdas and streams.
The course is designed to build on existing expertise as Java programmers
and takes the attendants' skills one step further. Prerequisite for these
seminars is at least 1 year of experience with Java or equivalent knowledge.