RKCP Information Technology




Java 8 New Features
Home » Courses   » Java 8 New Features

Java 8 New Features

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

Overview

This course helps to develop Java Applications using the new features of Java 8. Java 8 introduces functional programming into Java which is similar to the features available with languages like Scala Groovy and grails etc. This course teaches its participants new features like Lambda Expressions, Concurrency Enhancements, Parallel Streams and many others and it is useful to Java developers who are willing to upgrade to Java 8 features.


Objective

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

  • Understand 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

Total Duration - 2 Days


Prerequisites

Participants who are Java Developers with good experience to Java 6 \/ Java 7 features experience are preferred.


Syllabus

Expand All
  • 1. Collections Streams, and Filters
    • Iteration through collection using lambda syntax
    • Describing Stream interface
    • Filteration of 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 different types of stream operations
    • Describing the Optional class
    • Describing lazy processing
    • Sorting a stream
    • Saving results to a collection using collect method
    • Grouping and partition data using the Collectors class
  • 4 .Java Date/Time API
    • Creating and managing date-based events
    • Creating and managing 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 creating timestamps, periods and durations
    • Formatting local and zoned dates and times
  • 5. File I/O (NIO.2)
    • Using the Path interface to operate file and directory paths
    • Using the Files class in order to check, delete, copy, or move a file or directory
    • Using Stream API with NIO2
  • 6. Parallel Streams
    • Reviewing key characteristics of streams
    • Describing the process to make a stream pipeline executed in parallel
    • List the key assumptions needed to use a parallel pipeline
    • Defining reduction
    • Describing the reason behind reduction requiring 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