Java SE 8 New Features Training

  • Learn via: Classroom / Virtual Classroom / Online
  • Duration: 2 Days
  • Price: Please contact for booking options
We can host this training at your preferred location. Contact us!

This Java SE 8 New Features training delves into the major changes and enhancements in Oracle Java SE 8. Expert Oracle University instructors will help you develop a deeper understanding of the basics; you'll then explore using streams and lambda expressions with collections.Learn To:Understand lambda expressions and streams.Use the new Nashorn JavaScript Engine.Use Mission Control and Flight Recorder.Use new concurrent lambda features.Benefits to YouBy enrolling in this course, you'll develop new knowledge and skills that will help you better leverage the new Java Date and Time API and Nashorn JavaScript engine.  

There are no prerequisites for this course.

  • Software Engineer
  • Software Developers

  • Use new concurrent lambda features
  • Create lambda expressions using the proper syntax
  • Use the new Date/Time API
  • Use the new Nashorn JavaScript Engine
  • Use Mission Control and Flight Recorder
  • Create lambda expressions using the default library interfaces

Course Introduction

  • Reviewing course objectives
  • Discussing course format and LVC
  • Getting acquainted with instructor and student
  • Discussing course topics planned for coverage
  • Overview of changes in 8

Introducing Lambda Expressions

  • Describing the purpose of an anonymous inner class
  • Describing drawbacks to anonymous inner classes
  • Describing the components of a lambda expression
  • Defining a functional interface
  • Creating programs that use lambda expressions

A Case for Lambda Expressions

  • Discussing the reasons for adding lambda expressions to the Java language
  • Reviewing the standard way of extracting data in Java
  • Refactoring code to reduce redundancy
  • Refactoring code to use inner classes
  • Refactoring code to use lambda expressions
  • Listing the benefits of lambda expressions

Filtering Collections with Lambdas

  • Iterating though a collection with forEach
  • Iterating through a collection using lambda syntax
  • Describing the Stream interface
  • Filtering a collection using lambda expressions
  • Calling an existing method using a method reference
  • Chaining multiple methods together
  • Comparing function and imperative programming
  • Defining pipelines in terms of lambdas and collections

Using Built in Lambda Types

  • Listing the built in interfaces included in java.util.function
  • Determining true or false with a Predicate
  • Processing an object and return nothing with Consumer
  • Processing one object and return another with Function
  • Generating a new object with Supplier
  • Using primitive versions of the base interfaces
  • Using binary versions of the base interfaces

Collection Operations with Lambda

  • Extracting data from an object using map
  • Searching for data using search methods
  • Describing the types of stream operations
  • Describing the Optional class
  • Performing calculations using methods
  • Describing lazy processing
  • Sorting a stream
  • Saving results to a collection using the collect method

Parallel Streams

  • Reviewing the key characteristics of streams
  • Contrasting old style loop operations with streams
  • Describing how to make a stream pipeline execute in parallel
  • Listing the key assumptions needed to use a parallel pipeline
  • Defining reduction
  • Describing why reduction requires an associative function
  • Calculating a value using reduce
  • Describing the process for decomposing and then merging work

Lambda Cookbook

  • Modifying a list using removeIf
  • Updating a list using replaceAll
  • Updating a map using computeIfAbsent, computerIfPresent, and merge
  • Sending the keys and values from a map to a stream
  • Reading a file to a stream
  • Reading a text file into an ArrayList
  • List, walk, and search a directory structure using a stream
  • Flattening a stream using flatMap

Method Enhancements

  • Considering the importance of building good libraries
  • Using static methods in Interfaces
  • Using default methods
  • Understanding default method inheritance rules

Using the Date/Time API: Working with Local Dates and Times

  • Listing the goals of the Date/Time API (JSR-310)
  • Creating and manage date-based events
  • Creating and manage time-based events
  • Combining date and time into a single object

Using the Date/Time API: Working with Time Zones

  • Working with dates and times across time-zones and manage changes resulting from daylight savings

Using the Date/Time API: Working with Date and Time Amounts

  • Defining and create timestamps, periods and durations
  • Applying formatting to local and zoned dates and times

JavaScript on Java with Nashorn: Creating and executing shell scripts

  • Creating and execute shell scripts using JavaScript and Nashorn

JavaScript on Java with Nashorn: Writing JavaScript Applications

  • Developing JavaScript applications that leverage Java code using Nashorn

JavaScript on Java with Nashorn: Writing JavaFX Applications Using JavaScript

  • Running JavaScript script from Java applications usingJSR-223
  • Prototype JavaFX applications using Nashorn and JavaScript

Intro to Mission Control

  • Describing JMX and Managed Beans with Mission Control
  • Monitoring CPU utilization with Mission Control
  • Analyzing JVM characteristics with Mission Control
  • Analyzing heap memory with Mission Control

Intro to Flight Recorder

  • Describing the Java Flight Recorder
  • Describing the Java Flight Recorder Architecture
  • Starting a Java Flight Recording
  • Managing a Java Flight Recording
  • Analyzing a Java Flight Recording


Contact us for more detail about our trainings and for all other enquiries!

Java Standard Edition (SE) is the starting point for creating desktop applications in the Java programming language. It consists of Java application development software, distribution technologies, and many other class libraries and toolsets. Based on the system information of your computer, you should use Java 32 bit or Java 64 bit.
Yes it is. Oracle has been managing the OpenJDK open source community for more than ten years and provides the latest releases for free. Java SE contributions are free to be ported and analyzed by anyone. Java SE downloads including the latest versions can be done from Oracle’s website. You can also check for java updates by visiting this website.
Java SE (Standard Edition) is used for desktop applications, and Java Enterprise Edition is used to create web-based and large-scale applications. Java SE describes everything from the Java programming language's basic types and objects to high-level classes used for communication, safety, database access, GUI design, and XML parsing.
Java programming language is platform-independent thanks to Java Virtual Machine (JVM) that translates the byte code into machine code. Java SE Runtime Environment provides the necessary environment to the Java Virtual Machine (JVM). Java Virtual Machine and Java SE Runtime Environment are parts of Java Development Kit (JDK).

Upcoming Trainings

Join our public courses in our Istanbul, London and Ankara facilities. Private class trainings will be organized at the location of your preference, according to your schedule.

Classroom / Virtual Classroom
13 May 2024
Istanbul, Ankara, London
2 Days
Classroom / Virtual Classroom
16 May 2024
Istanbul, Ankara, London
2 Days
Classroom / Virtual Classroom
17 May 2024
Istanbul, Ankara, London
2 Days
Classroom / Virtual Classroom
20 May 2024
Istanbul, Ankara, London
2 Days
Classroom / Virtual Classroom
07 June 2024
Istanbul, Ankara, London
2 Days
Classroom / Virtual Classroom
05 June 2024
Istanbul, Ankara, London
2 Days
Classroom / Virtual Classroom
16 June 2024
Istanbul, Ankara, London
2 Days
Classroom / Virtual Classroom
19 July 2024
Istanbul, Ankara, London
2 Days
By using this website you agree to let us use cookies. For further information about our use of cookies, check out our Cookie Policy.