Live Chat
Monday - Friday 8am - 6pm EST Chat Now
Contact Us
Monday - Friday 8am - 8pm EST 1-800-268-7737 Other Contact Options
Checkout

Cart () Loading...

    • Quantity:
    • Delivery:
    • Dates:
    • Location:

    $

Transitioning to Java 9

Fast-track course for developers

GK# 8987

Course Overview

TOP

Transitioning to Java 9 is a two-day, hands-on fast-track course geared for developers who have prior working knowledge of earlier versions of Java.  Throughout the course students learn the best practices for taking advantage of the new Java Module system as well as other new features in this major update to the Java programming language. Students who attend Transitioning to Java 9 will leave this course armed with the required skills to develop maintainable code that easily scales into multi-core environments. Geared for developers currently working in Java 9 who need to migrate their skills or applications to Java 9, this course will teach students everything they need to successfully master and implement the latest features and benefits of Java 9 and become an effective Java 9 developer.

Schedule

TOP
  • Delivery Format:
  • Date:
  • Location:
  • Access Period:

$

What You'll Learn

TOP

Working within in an engaging, hands-on learning environment, guided by our expert team, attendees will learn to:

  • Understand not only the fundamentals of the Java language, but also its importance, uses, strengths and weaknesses
  • Develop modular applications in Java
  • Migrate existing Java applications to the Java 9 platform
  • Utilize the tooling that is provided in Java 9 to migrate, monitor and optimize applications
  • Use the new JShell tool to quickly test java constructs
  • Improve implementations already using Java 8’s Stream API by utilizing the methods new in Java 9
  • Understand how the implementation of the String class has been updated to decrease the memory footprint
  • Use the enhancements made to the Concurrency API, working with CompletableFuture instance of Thread pools
  • Take the first step towards Reactive programming using Java’s Reactive Stream Flow API

 

Specific Java 9 features that are covered in the course include:

  • The Java Module System (project Jigsaw)
  • JShell
  • Updated try-with-resources
  • Performance enhancements in Java 9
  • Updates to Collection and Stream API

Outline

TOP
Viewing outline for:

Virtual Classroom Live Outline

Session: Java 9

 

Lesson: Introduction to Java 9

  • Introduction to Java 9
  • Java Community Process (JCP)
  • JDK Enhancement Proposal (JEP)

 

Lesson: New in Java 9

  • Introduce some of the 'smaller' Java 9 topics
  • Java versioning
  • The JDK/JRE file structure
  • Deprecation
  • The jdeprscan tool
  • Multi-Release JAR Files
  • HTML 5 compliant JavaDoc

 

Lesson: Milling Project Coin

  • Changes made to the language since Java 6
  • Multi-catch
  • Using effectively final variables in try-with-resources
  • Suppressed Exceptions
  • Binary literals
  • Reserved underscore (Java 9)
  • Type inference in anonymous classes (Java 9)
  • @SafeVargs (updates in Java 9)
  • Default and static methods in interfaces (Java 8)
  • Private methods in interfaces (Java 9)

 

Lesson: Collection and Stream Updates

  • Factory methods for Immutable Collection types
  • takeWhile and dropWhile methods
  • The Stream Iterate and ofNullable methods

 

Session: The Java Module system (Jigsaw)

 

Lesson: Why JigSaw?

  • Problems with Classpath
  • Encapsulation and the public access modifier
  • Application memory footprint
  • Java 8’s compact profiles
  • Using internal JDK APIs

 

Lesson: Introduction to the Module System

  • Introduce Project Jigsaw
  • Classpath and Encapsulation
  • The JDK internal APIs
  • Java 9 Platform modules
  • Defining application modules
  • Define module dependencies
  • Implicit dependencies
  • Implied Readability
  • Exporting packages

 

Lesson: The Module Descriptor

  • Define module requirements
  • Explain qualified exports
  • Open modules for reflection
  • Use ServiceLoader
  • The provides and uses keywords

 

Lesson: Working with Modules

  • Being backwards compatible
  • The ModulePath and ClassPath
  • Unnamed Modules
  • Automatic Modules
  • The JLink tool

 

Session: JShell

 

Lesson: JShell

  • Introduction to JShell
  • Running Expressions in JShell
  • Importing packages
  • Defining methods and types
  • Using the JShell editor
  • Save and loading state

Prerequisites

TOP

Attendees should have an working knowledge in developing basic Java 8 applications.

Who Should Attend

TOP

This is an intermediate level Java SE (JSE) developer course, designed for experienced Java 8 developers.

Course Delivery

This course is available in the following formats:

Virtual Classroom Live

Experience expert-led online training from the convenience of your home, office or anywhere with an internet connection.

Duration: 2 day

Request this course in a different delivery format.
Enroll