Java SE8 New Features

2 Day Course
Hands On
Official Curriculum
Code SL-NEWF-SE8

This course has been retired. Please view currently available Java Training Courses.

Modules

Collapse all

Introducing Lambda Expressions (5 topics)

  • 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

Using Built in Lambda Types (7 topics)

  • 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 (8 topics)

  • 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

A Case for Lambda Expressions (6 topics)

  • 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 (8 topics)

  • 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

Parallel Streams (8 topics)

  • 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 (8 topics)

  • 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 (4 topics)

  • 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 (4 topics)

  • 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 (1 topic)

  • 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 (2 topics)

  • 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 (1 topic)

  • Creating and execute shell scripts using JavaScript and Nashorn

JavaScript on Java with Nashorn: Writing JavaScript Applications (1 topic)

  • Developing JavaScript applications that leverage Java code using Nashorn

JavaScript on Java with Nashorn: Writing JavaFX Applications Using JavaScript (2 topics)

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

Intro to Mission Control (4 topics)

  • 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 (5 topics)

  • 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

Prerequisites

Fundamentals of the Java SE7 Programming Language or equivalent knowledge.

Course PDF

Print

Sections