Contact Us

« Important Announcement » Contact Us 877-206-0106 | USA Flag

Thank you for your interest in LearnQuest.

Your request is being processed and LearnQuest or a LearnQuest-Authorized Training Provider will be in touch with you shortly.


Thank you for your interest in Private Training.

We look forward to helping you develop the perfect training solution to help you meet your company's goals.

For immediate assistance, speak with one of our representatives using the chat module below. Otherwise, LearnQuest or a LearnQuest-Authorized Training Provider will be in touch with you shortly.


Thank you for your interest in LearnQuest!

Now, you will be able to stay up-to-date on our latest course offerings, promotions, and training discounts. Watch your inbox for upcoming special offers.


Date: xxx

Location: xxx

Time: xxx

Price: xxx

Please take a moment to fill out this form. We will get back to you as soon as possible.

All fields marked with an asterisk (*) are mandatory.

Java Modules and New Features (Java 11+)

1,170 USD
2 Days
Classroom Training, Online Training

AWS Training Pass

Take advantage of flexible training options with the AWS Training Pass and get Authorized AWS Training for a full year.

Learn More

Prices reflect a 22.5% discount for IBM employees (wherever applicable).
Prices reflect a 24% discount for Kyndryl employees (wherever applicable).
Prices reflect the Accenture employee discount.
Prices shown are the special AWS Partner Prices.
Prices reflect the Capgemini employee discount.
Prices reflect the UPS employee discount.
Prices reflect the ??democompanyname?? employee discount.
GSA Private/Onsite Price: ??gsa-private-price??
For GSA pricing, please go to GSA Advantage.

Class Schedule

Delivery Formats

Sort results

Filter Classes

Guaranteed to Run





  • Date: 15-Jul-2024 to 16-Jul-2024
    Time: 9AM - 5PM US Eastern
    Location: Virtual
    Language: English
    Delivered by: LearnQuest
    Price: 1,170 USD
  • Date: 9-Sep-2024 to 10-Sep-2024
    Time: 9AM - 5PM US Eastern
    Location: Virtual
    Language: English
    Delivered by: LearnQuest
    Price: 1,170 USD
  • Date: 4-Nov-2024 to 5-Nov-2024
    Time: 9AM - 5PM US Eastern
    Location: Virtual
    Language: English
    Delivered by: LearnQuest
    Price: 1,170 USD
  • Date: 30-Dec-2024 to 31-Dec-2024
    Time: 9AM - 5PM US Eastern
    Location: Virtual
    Language: English
    Delivered by: LearnQuest
    Price: 1,170 USD
  • Date: 24-Feb-2025 to 25-Feb-2025
    Time: 9AM - 5PM US Eastern
    Location: Virtual
    Language: English
    Delivered by: LearnQuest
    Price: 1,170 USD
View Global Schedule

Course Description


This course provides in-depth coverage of the important new features through Java 11 LTS. It also provides an overview of useful new features in Java 12+ that are likely to appear in Java 17 (the next LTS release). Technical coverage starts with the new Java Platform Module System (JPMS), which presents a fundamental shift in how applications are organized, and interconnected to the libraries they use. We introduce modules from the ground up, show how to use them, describe your choices in usage, as well as caveats and pitfalls. We also provide guidelines for migration from non-modular applications. This course is very hands-on, including numerous code examples and programming labs that reinforce the concepts presented, so that attendees can immediately employ what they’ve learned in their current projects.




Proficient Java programmers who need to learn the important new features through Java 11 LTS.


    Working knowledge of Java programming, including use of inheritance, interfaces, and exceptions


Java Modules and New Features (Java 11+)
  • Agenda
  • Conventions
Preface: Java State of the Union
  • Java Release Cycle
  • and Support - Illustrated
  • Update Schedule - By Example
  • Modules and JDK Version Numbers
  • In
  • In
  • Out
  • Out
  • Out
  • - for Removal
  • to Move to Java Modules?
  • in Java 9+
  • 0.0: Getting Started
Session 1: Introduction to Modules
  • Objectives
Motivation and Overview
  • before Java Modules
  • Natural Progression of Organization
  • Encapsulation
  • Encapsulation - Not in Java 8
  • Use Only - Case Study
  • Model vs. Runtime Model
  • Model vs. Runtime Model
  • Hell
  • of the Module Paradigm
  • Graphs
  • Java Modules
  • Encapsulation - Realized in Java 9
  • Name vs. Package Name
  • and Director Structure
  • Projects and the Module Path
  • Can Be Controversial
  • 1.1: First Module Project
Types of Modules
  • of Modules - Defined
  • Modules
  • Modules
  • Modules
  • Modules - Why?
  • Module
  • Module - Why?
Modular JDK
  • KDL - Different, Yet Compatible
  • SE vs. JDK - Not the Same!
  • Modules - java.base and
  • of the Modular JDK
Our Approach
  • Work
  • Study
  • 1.2: Simple Migration
Session 2: Working With Modules
  • Objectives
Defining and Using Modules
  • Applications
  • 2.1: Modular Application
  • Graphs
  • Module and Module Graph
  • Graph in a Real library - Derby JDBC
  • Graph in the Java Platform -
  • Dependencies
  • Modules
  • Exports
  • up Deep Reflection
  • Encapsulation - Summary
  • Overview
  • - UML Diagram
  • before Modules
  • with Modules
  • Class - Example
  • Interface - Example
  • Provider - Example
  • - Example
  • 2.2: Services
Compatibility and Migration
  • / Gradual Adoption
  • with Private (Deep) Reflection
  • Issues
  • and Unnamed Modules - Revisited
  • Migration Path
  • Migration Path - Illustrated
  • Packages
  • I Just Ditch the Classpath?
  • Line Directives
  • 2.3: Migration
  • - It's Not Conclusive!
  • Support
  • Tools and Dependencies
  • about Module Versions?
  • Support
  • and Testing
  • Java EE
  • Module or Not to Module?
  • Module or Not to Module?
  • is slow - Mid 2019 Stats
  • Resources
  • 2.4: Multi-Module Maven Project [Optional]
Session 3: Type Inference
  • Objectives
Local-Variable Type Inference
  • Comes to Java
  • var in for-each Loops
  • Continuation of Type Inference in Java
  • Local-Variable Type Inference
Overview of Lambda Expressions
  • Interface - Defined
  • a Method Down to is Essence
  • Expression as Functional Interface
  • Interfaces and Lambdas
  • Occur in a Target Context
  • in JUnit - Executable
  • in Collections - Consumer<T>
  • Expression Syntax - Overview
  • Compatibility
  • Expression Syntax - Details
  • Expression Syntax - Details
Local-Variable Syntax for Lambdas
  • Syntax for Lambdas
  • var with Lambdas
  • 3.1: Using var [Optional]
Session 4: JShell
  • Objectives
Introduction to JShell
  • Comes to Java
  • Operations and Commands
  • Learning
  • Started with JShell
Working with Code
  • Points
  • Snippets
  • Work with Snippets - Date/Time API
  • the Stream API On-the-Fly
  • Commands
  • Methods
  • Code
  • an External Editor
  • for Creating New Code
  • As You Go
  • Modes
Using Libraries
  • External Classes
  • External Classes
  • with JavaTunes Modules
  • up for JavaTunes Work
Session 5: HTTP Client
  • Objectives
  • Clients in Java - Existing Options
  • RESTful Services
  • Java HTTP Client
  • HTTP Client - Features
Using HTTP Client
  • Main Players
  • Simple Example
  • Tips - Builders and Products
  • Tips - Nested Classes
  • Tips - Interfaces and Factory Classes
  • the Client
  • the Request
  • a Request Body
  • Request / Response
  • the Response
  • 5.1A: HTTP Client
  • Options for the Response Data
  • the Response - Example
  • Requests
  • with Asynchronous Responses
  • with Asynchronous Responses
  • 5.1B: HTTP Client
  • 5.2: REST Client Demo [Optional]
Session 6: Other New Features
  • Objectives
Collection Factory Methods
  • Factory Methods
  • and Set.of()
  • Entirely New
  • Just Convenient - More Efficient
Multi-Release JARs
  • to Support Multiple Releases of Java
  • JARs - MR-JARs
  • - Illustrated
  • Layout - Simplest
  • an MR-JAR
  • API Principle
  • Strategies
  • Tools Support for MR-JARs
  • with Caution
  • 6.1: MR-JAR Demo [Optional]
Reactive Programming
  • Programming Overview
  • (Pull) - Synchronous
  • (Push) - Asynchronous
  • Programming - Observer Plus
  • Streams - Overview
  • API - Main Players
  • of the Flow API
  • Methods in Interfaces
  • API Enhancements
  • Methods in the Platform API
  • Methods in the Platform API
  • Expressions (Java 12-14+)
  • Expression Detail
  • Number Formatting
  • Collection (GC)
  • Garbage Collection (ZGC)
  • Comparison G1 and ZGC
Session 7: Custom Runtime Images
  • Objectives
  • Runtimes
  • Runtime Images with jlink
  • 7.1: Custom Runtime Images [Optional]
  • of What We've Done
  • of What We've Done
2023 Top 20 Training Industry Company - IT Training

Need Help?

Call us at 877-206-0106 or e-mail us at

Personalized Solutions

Need a personalized solution for your Training? Contact us, and one of our training advisors will help you find the best solution.

Contact Us

Need Help?

Do you have a question about the courses, instruction, or materials covered? Do you need help finding which course is best for you? We are here to help!

Talk to us

20% Off All Project Management Training Courses

Maximize project efficiency and profitability across the board.


20% Off All AI Training Courses

IBM TechXchange Conference 2024

October 21-24 | Mandalay Bay, Las Vegas

Save $127 with Code: TECHXCHANGE10

Offer Expires June 30, 2024

Self-Paced Training Info

Learn at your own pace with anytime, anywhere training

  • Same in-demand topics as instructor-led public and private classes.
  • Standalone learning or supplemental reinforcement.
  • e-Learning content varies by course and technology.
  • View the Self-Paced version of this outline and what is included in the SPVC course.
  • Learn more about e-Learning

Course Added To Shopping Cart







Self-Paced Training Terms & Conditions


Sorry, there are no classes that meet your criteria.

Please contact us to schedule a class.

STOP! Before You Leave

Save 0% on this course!

Take advantage of our online-only offer & save 0% on any course !

Promo Code skip0 will be applied to your registration

Nothing yet
here's the message from the cart

To view the cart, you can click "View Cart" on the right side of the heading on each page
Add to cart clicker.

Purchase Information

??elearning-coursenumber?? ??coursename??
View Cart

Need more Information?

Speak with our training specialists to continue your learning journey.


Delivery Formats


By submitting this form, I agree to LearnQuest's Terms and Conditions

heres the new schedule
This website uses third-party profiling cookies to provide services in line with the preferences you reveal while browsing the Website. By continuing to browse this Website, you consent to the use of these cookies. If you wish to object such processing, please read the instructions described in our Privacy Policy.
Your use of this LearnQuest site affirms your consent to our use of session and persistent cookies to track how you use our website.