Using Java 8's New Features

  4.8 out of 5 - Read Testimonials

This Using Java 8's New Features training class introduces a number of revolutionary capabilities - many of them centered on lambda expressions and functional-style programming. These capabilities add powerful new programming techniques to the language, but also add complexity.

This concise course is focused on introducing the new capabilities and how to use them. It includes numerous code examples and programming labs that illustrate all of the new capabilities.

The course is hands on, and requires that students be comfortable with writing general Java code at an intermediate level, including the use of interfaces.

Goals
  1. Become familiar with the additions to Java interfaces
  2. Understand and use functional interfaces
  3. Understand lambda expressions and method references, and use them to pass behavior (methods)
  4. Learn about the pre-defined functional interfaces, and use them with lambda expressions
  5. Understand and use the Stream API
  6. Process collections using streams, including chaining operations and using collectors
  7. Understand and use parallel streams
  8. Understand and deal with the issues of parallel processing
  9. Learn and use the new Data/Time API
  10. Become familiar with other new capabilities
Outline
  1. What's new in Interfaces
    1. Static Methods
    2. Default Methods
    3. Functional Interfaces
  2. Introducing Lambda Expressions
    1. Motivation for Lambdas
    2. Lambda Expression Overview
    3. Lambda Expressions and Functional Interfaces
    4. Using Lambda Expressions
    5. Working with Method References
  3. The Stream API
    1. Overview
      1. Shortcomings of Collections
      2. What are Streams?
      3. Chaining - Intermediate and Terminal Operations
    2. Understanding the Stream API
      1. Overview - java.util.stream types (Stream, Collector, ...)
      2. Keys to Understanding the API
      3. Important Functional Interfaces: Predicate, Comparator, Function
    3. Stream Processing
      1. Using filter()
      2. Sorting / Comparator.comparing()
      3. Using map()
      4. Other operations: peek(), distinct(), limit(), skip()
      5. Result producing terminal operations - collect, min/max ...
      6. void Terminal Operations - forEach()
      7. Existence (e.g. anyMatch) and Finder (e.g. findAny) Operations
    4. Collectors
      1. Roles and Capabilities
      2. Collectors.toList(), Collectors.toSet()
      3. Supplier and Collectors.toCollection()
      4. Partitioning and Grouping Collectors
  4. Parallel Processing and Concurrency
    1. Overview
    2. Java 8 Parallel Processing using Streams
    3. Ground Rules / Requirements for Using Parallel Stream Processing
    4. Multithreading / Concurrency Issues
    5. Race Conditions, Data Synchronization, Locks
    6. Performance Issues and Considerations
  5. Date/Time API
    1. Overview and Limitations of Previous API
    2. The Date/Time API (JSR 310)
    3. Creating and Working with LocalData/LocalTime/LocalDateTime Instances
    4. Formatting Date/Time
    5. Localization / Time Zones
    6. Periods and Durations
    7. Performing Calculations on Date/Time types
  6. Other Capabilities
    1. Compact Profiles
    2. Using Optional Instead of null
    3. Repeatable and Type Annotations
    4. Nashorn JavaScript Engine
    5. Minor New Features
Class Materials

Each student in our Live Online and our Onsite classes receives a comprehensive set of materials, including course notes and all the class examples.

Preparing for Class

Training for your Team

Length: 2 Days
  • Private Class for your Team
  • Online or On-location
  • Customizable
  • Expert Instructors

Training for Yourself

$1,050.00 or 2 vouchers

Upcoming Classes

  • See More Classes

Please select a class.
  • Live Online Training
  • For Individuals
  • Expert Instructors
  • Guaranteed to Run
  • 100% Free Re-take Option
  • 1-minute Video

What people say about our training

My company looked at a few different online courses before eventually settling on Webucator's course. After taking the course, I know we made the right decision.
Arthur Parisi
Andesa Services
Instructor was very engaging and clearly has thorough knowledge of materials (Java 8 new features).
Jonathan Hughes
Leidos
My web design class was just what I was looking for and my instructor not only did a great job in relaying the information I needed, she also was able to answer questions I had that were above & beyond the course material!
Bill Dannelly
HoneyBaked Foods, Inc.
I highly recommend this class to anyone that needs to enrich their presentations and build powerful decks for their clients.
Jordan Walters
DealerTrack

No cancelation for low enrollment

Certified Microsoft Partner

Registered Education Provider (R.E.P.)

GSA schedule pricing

61,415

Students who have taken Instructor-led Training

11,764

Organizations who trust Webucator for their Instructor-led training needs

100%

Satisfaction guarantee and retake option

9.56

Students rated our Using Java 8's New Features trainers 9.56 out of 10 based on 15 reviews

Contact Us or call 1-877-932-8228