RKCP Information Technology
                                                                                                          Java 8 New Features
Home » Courses   » Java 8 New Features

Java 8 New Features

Java 8 introduces functional programming into Java, similar to the features available with languages like Scala, Groovy and grails, etc.

Overview

This course enables development of Java Applications using the new features of Java 8. Java 8 introduces functional programming into Java similar to the features available with languages like Scala Groovy and grails etc. This course teaches new features like Lambda Expressions Concurrency Enhancements Parallel Streams and others and is useful to Java developers who want to upgrade to Java 8 features.


Objective

This course is targeted towards Java developers who want to learn the new features of Java 8. At the end of this training, participants will be able to:

  • Understand the new features in Java 8
  • Understand Functional Interfaces and Lambda Expressions
  • Use Lambda Expressions with Collection Streams and Filters
  • Understand Built In functional interfaces in Java 8
  • Use Parallel Streams
  • Use Concurrency Enhancements in Java 8
  • Use File NIO with Lambda Expressions
  • Use the new Date and Time API with Java 8

Duration - 2 Days


Prerequisites

Java Developers with good exposure to Java 6 \/ Java 7 features.


Syllabus

Expand All
  • 1. Collections Streams, and Filters
    • 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
    • Defining pipelines in terms of lambdas and collections
  • 2. Lambda Built-in Functional Interfaces
    • Listing the built-in interfaces included in java.util.function
    • Core interfaces - Predicate, Consumer, Function, Supplier
    • Using primitive versions of base interfaces
    • Using binary versions of base interfaces
  • 3. Lambda Operations
    • Extracting data from an object using map
    • Describing the types of stream operations
    • Describing the Optional class
    • Describing lazy processing
    • Sorting a stream
    • Saving results to a collection using the collect method
    • Grouping and partition data using the Collectors class
  • 4 .Java Date/Time API
    • Creating and manage date-based events
    • Creating and manage time-based events
    • Combining date and time into a single object
    • Working with dates and times across time zones
    • Managing changes resulting from daylight savings
    • Defining and create timestamps, periods and durations
    • Applying formatting to local and zoned dates and times
  • 5. File I/O (NIO.2)
    • Using the Path interface to operate on file and directory paths
    • Using the Files class to check, delete, copy, or move a file or directory
    • Using Stream API with NIO2
  • 6. Parallel Streams
    • Reviewing the key characteristics of streams
    • Describing how to make a stream pipeline execute in parallel
    • List 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
    • Listing the key performance considerations for parallel streams