New Features in Java 11

19 Ratings

Course Number: JAV-414
Duration: 2 days (13 hours)
Format: Live, hands-on

Java Training Overview

Accelebrate's New Features in Java training course walks attendees through the important new features through Java 11 LTS and provides an overview of the new features in Java 12+ that are also likely to appear in Java 17 (the next LTS release). Students learn how to leverage the new Java Platform Module System (JPMS), which presents a fundamental shift in how applications are organized and interconnected to the libraries they use. Participants learn how to use modules and explore migration from non-modular applications.

Location and Pricing

Accelebrate offers instructor-led enterprise training for groups of 3 or more online or at your site. Most Accelebrate classes can be flexibly scheduled for your group, including delivery in half-day segments across a week or set of weeks. To receive a customized proposal and price quote for private corporate training on-site or online, please contact us.

In addition, some courses are available as live, instructor-led training from one of our partners.

Objectives

  • Understand the new Java release cycle and Long Term Support (LTS) releases
  • Be familiar with significant deprecated and removed features, and how to work around them
  • Create and use Java modules, understanding module descriptors, modular JARs, exports and dependencies, and the modulepath
  • Understand the structure and behavior of the modular JDK, how it supports modular applications as well as legacy classpath-based code, and the implications of strong encapsulation on each
  • Migrate classpath-based applications to Java 11, understanding the stages of migration and options available
  • Recognize the issues with 3rd party libraries in a migration effort, and how to work with them on the modulepath and classpath
  • Use local-variable type inference with var, including lambda parameters
  • Gain a practical working knowledge of the JShell REPL tool, including working with code snippets and variables, configuration, and using external libraries
  • Use the HTTP Client to access HTTP resources from Java, as well as understand the other options available
  • Work with various HTTP request and response types, using both synchronous and asynchronous techniques
  • Outline the new factory methods in Java Collections and understand native immutable collections
  • Describe the motivation for multi-release JAR files (MR-JARs), understand their structure, and how to create them
  • Understand the runtime behavior of MR-JARs in both legacy and modern JVMs, and principles and strategies for working with them effectively
  • Outline the principles of Reactive Programming and how it differs from traditional synchronous invocation models
  • Describe Reactive Streams and the role of the Flow API that defines the Java platform’s support for them
  • Understand the characteristics and benefits of custom runtime images
  • Use jdeps to analyze application dependencies, and create custom runtimes with jlink, for both modular and classpath-based applications
  • Explore some of the more important additional features and APIs, including new features for interfaces, the Process API, new JDK tools and command line options

Prerequisites

All Java training students be comfortable with writing general Java code at an intermediate level.

Outline

Expand All | Collapse All

Introduction
Java State of the Union
  • New Release Cycle
  • What's In
  • What's Out
  • The Move to Java Modules
Introduction to Modules
  • Motivation and Overview
  • Types of Modules
  • Modular JDK
  • Our Approach
Working with Java 9 Modules
  • Defining and Using Modules
  • Services
  • Compatibility and Migration
  • Conclusion
Type Inference
  • Local-Variable Type Inference
  • Brief Overview of Lambdas
  • Local-Variable Syntax for Lambdas
JShell
  • Introduction to JShell
  • Working with Code
  • Using Libraries (Modules, Jars, etc.)
Http Client
  • Overview
  • API
  • Usage and Features
  • - Session 6: Other New Features
  • Collection Factory Methods
  • Multi-Release JARs
  • Reactive Programming
  • Miscellaneous
  • Upcoming Features in Java 12+
Custom Runtime Images
  • Application-Specific Runtimes
  • Benefits
  • Creating Runtime Images with jlink
Conclusion

Training Materials

Attendees receive comprehensive courseware.

Software Requirements

  • A recent version of Windows, macOS, or Linux with at least 8 GB RAM
  • JDK 11 or later
  • Eclipse or IntelliJ IDEA
  • Other free software - please contact us if you have purchased this class


Great instruction and excellent value. The notes and class materials were fantastic and will serve as reference material when we migrate to JDK 11.

 Ricardo C. - 24 Hour Fitness, Carlsbad, CA

Learn faster

Our live, instructor-led lectures are far more effective than pre-recorded classes

Satisfaction guarantee

If your team is not 100% satisfied with your training, we do what's necessary to make it right

Learn online from anywhere

Whether you are at home or in the office, we make learning interactive and engaging

Multiple Payment Options

We accept check, ACH/EFT, major credit cards, and most purchase orders



Recent Training Locations

Alabama

Birmingham

Huntsville

Montgomery

Alaska

Anchorage

Arizona

Phoenix

Tucson

Arkansas

Fayetteville

Little Rock

California

Los Angeles

Oakland

Orange County

Sacramento

San Diego

San Francisco

San Jose

Colorado

Boulder

Colorado Springs

Denver

Connecticut

Hartford

DC

Washington

Florida

Fort Lauderdale

Jacksonville

Miami

Orlando

Tampa

Georgia

Atlanta

Augusta

Savannah

Hawaii

Honolulu

Idaho

Boise

Illinois

Chicago

Indiana

Indianapolis

Iowa

Cedar Rapids

Des Moines

Kansas

Wichita

Kentucky

Lexington

Louisville

Louisiana

New Orleans

Maine

Portland

Maryland

Annapolis

Baltimore

Frederick

Hagerstown

Massachusetts

Boston

Cambridge

Springfield

Michigan

Ann Arbor

Detroit

Grand Rapids

Minnesota

Minneapolis

Saint Paul

Mississippi

Jackson

Missouri

Kansas City

St. Louis

Nebraska

Lincoln

Omaha

Nevada

Las Vegas

Reno

New Jersey

Princeton

New Mexico

Albuquerque

New York

Albany

Buffalo

New York City

White Plains

North Carolina

Charlotte

Durham

Raleigh

Ohio

Akron

Canton

Cincinnati

Cleveland

Columbus

Dayton

Oklahoma

Oklahoma City

Tulsa

Oregon

Portland

Pennsylvania

Philadelphia

Pittsburgh

Rhode Island

Providence

South Carolina

Charleston

Columbia

Greenville

Tennessee

Knoxville

Memphis

Nashville

Texas

Austin

Dallas

El Paso

Houston

San Antonio

Utah

Salt Lake City

Virginia

Alexandria

Arlington

Norfolk

Richmond

Washington

Seattle

Tacoma

West Virginia

Charleston

Wisconsin

Madison

Milwaukee

Alberta

Calgary

Edmonton

British Columbia

Vancouver

Manitoba

Winnipeg

Nova Scotia

Halifax

Ontario

Ottawa

Toronto

Quebec

Montreal

Puerto Rico

San Juan