What’s new in Java 8

What’s new in Java 8 is a two-day, hands-on course geared for developers who have prior working knowledge of earlier versions of Java. Throughout the course students learn the best practices for taking advantage of the new functional programming constructs in Java as well as other new features in this major update to the Java programming language.


This is an intermediate- level Java course, designed for experienced Java developers who wish to get up and running with Java 8.  Attendees should have a working knowledge of developing Java applications.

Kursens mål

  • What functional programming means and what it brings to the table
  • How Lambda expressions and functional interfaces can greatly enhance other aspects of Java
  • To use the new Stream constructs to work with Collections and Collectors
  • How to work with default methods and pass methods as arguments
  • How to use the new features to support concurrency in multi-code systems
  • To work with the new Date/Time API and other new features
  • Understand and work with the JavaScript engine Nashorn


Session: Introduction to Java 8

  • Lesson: Overview of Java 8 Features
  • Overview of Java 8 features and enhancements
  • Anonymous functions, Streams
  • Lesson: Evolving Interfaces
  • Interfaces in Java 8
  • Default methods
  • Static methods
  • Multiple Inheritance?

Session: Streams

  • Lesson: Lambda Expressions and Functional Interface
  • Lambda Expression Syntax
  • Functional Interfaces
  • Type Inference in Java 8
  • Method references
  • Lesson: Streams
  • Processing Collections of data
  • The Stream interface
  • Reduction and Parallelism
  • Filtering collection data
  • Sorting Collection data
  • Map collection data
  • Find elements in Stream
  • Numeric Streams
  • Create infinite Streams
  • Sources for using Streams
  • Lesson: Collectors
  • Creating Collections from a Stream
  • Group elements in the Stream
  • Multi-level grouping of elements
  • Partitioning Streams

Session: Additional Java 8 Enhancements

  • Lesson: The new Date/Time API
  • Introduce the new Date/Time API
  • LocalDate, LocalDateTime, etc.
  • Formatting Dates
  • Working with time zones
  • Manipulate date/time values
  • Lesson: Optional
  • Introduce Optional
  • Implement Optional attributes
  • Lambda expressions and Optional
  • Lesson: Other new Java 8 features
  • StringJoiner
  • Repeating and Type Annotations
  • Parallel Array Sorting
  • Improved type inference
  • Method parameter reflection
  • Updated command line tooling
  • Lesson: Concurrency updates
  • Parallel data processing
  • Working with Streams in multi-core architectures
  • Using Lambda expressions with concurrency
  • Using ConcurrentHashMap
  • The common thread pool
  • CompletableFuture
  • Lesson: Nashorn JavaScript Engine
  • Working with JavaScript and Java
  • Accessing Nashorn
  • Executing JavaScript from Java
  • Executing Java from JavaScript
  • Implementing a Java Interface
  • Alternatives to Nashorn

Session: Java 8 Performance

  • Lesson: Performance and Java 8
  • Performance Across Java Versions
  • Tiered Compilation
  • Nashorn versus Java 7's JavaScript Engine
  • Lambda Expressions versus Inner Classes
  • Impact of Streams versus Collections
  • Date/Time Classes
  • I/O Stream Recommendations
  • Encoding/Decoding
  • Strings and Spring Interning


Working knowledge of earlier versions of Java.

Om kursen

Pris: 19 950,00 kr

exklusive moms

Längd 2 dagar
Kurskod A383

Kursen hålls på begäran

Kontakta oss för mer information.

Telefon: 08-440 11 00
E-post: info@addskills.com