The Learn Programming AcademyThe Learn Programming Academy
  • Home
  • Courses
  • Meet The Team
  • Blog
  • About Us
  • Contact
  • Home
  • Courses
  • Meet The Team
  • Blog
  • About Us
  • Contact

Programming Languages

  • Home
  • All courses
  • Programming Languages
  • What’s New in Java 9 – Modules and More!

What’s New in Java 9 – Modules and More!

Improve Your Career Prospects by Learning About New Java 9 Features Like Modules, JShell, Processes and More.

mm
Frank J. Mitropoulos
Programming Languages
(844 reviews)
Take this course
1344876_85da-1.jpg
  • Overview
  • Curriculum
  • Instructor
  • Reviews

Do you know some Java, but worry that with the recent release of Java 9, your skills are now outdated?

Maybe you are a programmer in another language, but want to improve your career prospects by learning about Java 9?

Perhaps you know Java 8 well, and want to find out about the new features in Java 9 so you can put them to use as quickly as possible?

Whatever the reason, if you want to find out about the new features in Java that are relevant to the majority of Java developers, then this course is for you.

The goal of the course was not to simply go quickly through all the new features in Java 9 at a very high-level. Nor was the goal to get into such detail that we forget about the feature we are studying. 

Instead, the course was designed to help you really understand these new features.  

So, we’ll look at what motivated the changes in Java 9 so we can better understand why there are needed and what issues they address.

Then simple, but relevant examples are provided to demonstrate each feature.

Your instructor in this course is Frank Mitropoulos Ph.D, a university professor with over 23 years of software development teaching experience.

What are some of the new features in Java 9?

Among the many new features in Java 9 are the Java Shell, The Java Platform Module System, and updates to the Process API.

In this course we’ll look at the Java Shell in detail. 

We think you will love the Java shell! It makes learning Java, exploring APIs, and experimenting with Java code so much easier and very productive. 

Once you start using it, we think you will go back to it over and over again when you have to write small snippets of code and especially when you are learning a new concept.

The Java Platform Module System is probably the feature that most developers have heard about when they think about Java 9. 

The Java 9 Platform Module System allows Java to move forward  by modularizing the JDK as well as adding modules as first class citizens to Java. 

The module system is actually quite intuitive and we think you will understand it and appreciate its impact straight away.

In this course we explain the motivation and goals for the module system and  then we look at every detail. Along the way we create a modular JokeServer application that we take from not using modules at all, all the way through being completely modularized and having a JavaFX front end.

Finally, we discuss some of the issues you may have when migrating existing non-modular code in Java 9 and we walk through a simple example.

Another exciting addition to Java 9 are the updates to the Process API.

The Process API allows developers to work with native processes directly in Java code.

No more hacky code and no more Java Native Interface code is needed to do things that were previously impossible to do directly in Java. 

In this course we look at the main use-cases where the Process API can be used and show live code examples right in the Java shell. You won’t believe how easy we can now work with processes on any OS.

That’s just an example of some of the content of What’s New in Java 9.

If you are ready to learn about the wonderful new features of Java 9, then click the enrolling button and get started today.

Requirements

  • It's desirable to have some knowledge of Java, or another object oriented language

What you will learn

  • Understand the new features in Java 9
  • Be able to use the new features in their own projects

Who should attend

  • Programmers in other languages wanting to understand new features of Java 9
  • Java 7 or Java 8 programmers wanting to find out more about Java 9

Is available on google app?

Yes

Is available on ios?

Yes

Course Features

  • Lectures 63
  • Quizzes 0
  • Exercises 0
  • Duration 7.5 total hours
  • Skill level Intermediate Level
  • Students 5824
  • Last Updated May, 2025
  • Introduction 01

    • Lecture
      Introduction to the Course 01:00
  • Installation and Setup 14:31

    • Lecture
      Installing JDK 9 on Windows 05:23
    • Lecture
      Installing IntelliJ on Windows 02:25
    • Lecture
      Installing JDK9 on Mac OSX 02:26
    • Lecture
      Installing IntelliJ on Mac OSX 01:45
    • Lecture
      Configuring IntelliJ on Mac OSX and Windows 02:32
  • The Java Shell (REPL) 01:58:44

    • Lecture
      Introduction to the Java Shell 04:39
    • Lecture
      Getting Started 10:33
    • Lecture
      Getting Help 05:17
    • Lecture
      Understanding Snippets 07:56
    • Lecture
      Editing and Navigating Code Snippets 08:24
    • Lecture
      Using Variables 11:47
    • Lecture
      Using Methods 14:40
    • Lecture
      Using an External Editor 14:56
    • Lecture
      Using Classes 12:19
    • Lecture
      Auto-Complete and Shortcuts 09:49
    • Lecture
      Loading and Saving Snippets 06:57
    • Lecture
      Using JAR Files 08:19
    • Lecture
      Using Modular JAR Files 03:08
  • The Java 9 Platform Module System 02:42:34

    • Lecture
      Introduction to the Java Module Platform System 03:08
    • Lecture
      Motivation and Goals of the Java Platform Module System 07:06
    • Lecture
      What is a Module? 04:31
    • Lecture
      The requires and exports Module Directives 04:48
    • Lecture
      The Modular JDK 07:45
    • Lecture
      Module Graphs 07:01
    • Lecture
      Our First Modular Application 12:40
    • Lecture
      Our First Modular Application in IntelliJ 10:33
    • Lecture
      Refactoring to Allow Multiple JokeServers 10:08
    • Lecture
      Using the JavaService Loader with the Java 9 Module System 06:25
    • Lecture
      Refactoring JokeServer to Provide Services 06:51
    • Lecture
      Allowing Reflective Access using the open(s) Directives 03:41
    • Lecture
      Adding a GUI to the JokeServer and Allowing Reflection 12:51
    • Lecture
      jlink: Creating a Custom JRE 04:29
    • Lecture
      Using jlink to Create Custom Runtimes for our Modular App and JokeServer 07:42
    • Lecture
      Migrating Existing Code to the Java 9 Module System 10:14
    • Lecture
      Example of Migrating Existing Code to the Java 9 Module System 02:01
    • Lecture
      Example of Migrating an Existing Application - Part 1 07:08
    • Lecture
      Example of Migrating an Existing Application - Part 2 05:21
    • Lecture
      Example of Migrating an Existing Application - Part 3 09:53
    • Lecture
      Example of Migrating an Existing Application - Part 4 06:52
    • Lecture
      Using Maven with Java 9, Modules, and IntelliJ 11:26
  • The Streams API 20:04

    • Lecture
      Overview of the additions to the Streams API 04:45
    • Lecture
      Examples of the additions to the Streams API 15:19
  • Private Method in Interfaces 14:42

    • Lecture
      Overview of Private Methods in Interfaces 03:37
    • Lecture
      Examples of Private Methods in Interfaces 11:05
  • Factory Methods for Collections 17:13

    • Lecture
      Overview of Factory Methods in Collections 03:42
    • Lecture
      Examples of Factory Methods in Collections 13:31
  • Try With Resources 12:18

    • Lecture
      Overview of Try-With-Resources 05:02
    • Lecture
      Example of Try-With-Resources 07:16
  • Diamond Operator 07:03

    • Lecture
      Overview of the Diamond Operator 02:43
    • Lecture
      Example of the Diamond Operator 04:20
  • SafeVarargs Annotation 11:39

    • Lecture
      Overview of the @SafeVarargs Annotation 04:06
    • Lecture
      Example of the @SafeVarags Annotation 06:45
    • Lecture
      Bonus - Please Watch! 00:48
  • Process API Updates 31:52

    • Lecture
      Overview of the update to the Process API 08:51
    • Lecture
      Example of the updates to the Process API Part 1 12:14
    • Lecture
      Example of the updates to the Process API Part 2 10:47
  • HTTP/2 Client 33:52

    • Lecture
      Overview of the new Java 9 HTTP/2 Client 07:47
    • Lecture
      Using the Java 9 HTTP/2 Client in the Java Shell 07:35
    • Lecture
      Using the Java 9 HTTP/2 Client to make Synchrnous request using IntelliJ 13:35
    • Lecture
      Using the Java 9 HTTP/2 Client to make Asynchronous Requests using IntelliJ 04:55
  • Other Changes in Java 9 06:39

    • Lecture
      Other Changes in Java 9 06:39
  • Extra Information - Source code, and other stuff 06:32

    • Lecture
      Source Code 01:43
    • Lecture
      Bonus Lecture and Information 04:49
Frank J. Mitropoulos
Experienced Computer Scientist and Educator Frank J. Mitropoulos, Ph.D. has over 30 years of experience in the computer science and information technology fields. Frank earned B.S., M.S., and Ph.D. degrees in Computer Science and has… View Profile
Tim Buchalka's Learn Programming Academy
Professional Programmers and Teachers - 323,000+ students The Learn Programming Academy was created by Tim Buchalka, a software developer with 35 years experience, who is also an instructor on Udemy, with over 335,000 students in his courses… View Profile

Student Feedback

4.5
844 Average ratings
47%
42%
9%
2%
1%
  • 3 months ago

    Kalpana Nagle

    explained java 9 features very well.

  • 10 months ago

    Amrutha B P

    good sessions, covering all features , great explaination

  • 1 year ago

    Steven Evans

    yes, very useful

  • 1 year ago

    Marwane

    I like how he explain notions.

  • 1 year ago

    Anonymized User

    Perfectly matched what I’m looking for .

  • 1 year ago

    Andy Mitchell

    Excellent course. Requires knowledge of earlier versions of Java including generics, streams, lambdas etc. which is to be expected, but a fine presenter who obviously is very knowledgeable about the content he describes.

  • 1 year ago

    Ajay Choudhary

    It was a great course with proper example and explanation.

  • 1 year ago

    Ivan Mikhalka

    Nice material explanation, useful and in-depth material

  • 2 years ago

    Anonymized User

    Great examples! Makes everything very understandable!

  • 2 years ago

    Mark L Smith

    I learned quite a bit about JShell which will be helpful to me.

  • Overview
  • Curriculum
  • Instructor
  • Reviews
Take this course
  • Share:
Take this course

Related Courses

Java Masterclass 2025: 130+ Hours of Expert Lessons Read More
mm
LPA TEAM

Java Masterclass 2025: 130+ Hours of Expert Lessons

mm
LPA TEAM
(0 review)
912352
(206505 Reviews)
Learn Python Programming Masterclass Read More
mm
LPA TEAM

Learn Python Programming Masterclass

mm
LPA TEAM
(0 review)
434160
(104166 Reviews)
Android Java Masterclass – Become an App Developer Read More
mm
LPA TEAM

Android Java Masterclass - Become an App Developer

mm
LPA TEAM
(0 review)
72356
(10698 Reviews)
Java Spring Tutorial Masterclass – Learn Spring Framework 5 Read More
mm
LPA TEAM

Java Spring Tutorial Masterclass - Learn Spring Framework 5

mm
LPA TEAM
(0 review)
41043
(6421 Reviews)
Kotlin for Java Developers Read More
mm
LPA TEAM

Kotlin for Java Developers

mm
LPA TEAM
(0 review)
32462
(5174 Reviews)
Learn Java Creating Android Games Using the LibGDX library Read More
mm
LPA TEAM

Learn Java Creating Android Games Using the LibGDX library

mm
LPA TEAM
(0 review)
3875
(523 Reviews)
Oracle Java Certification – Pass the Associate 1Z0-808 Exam. Read More
mm
LPA TEAM

Oracle Java Certification - Pass the Associate 1Z0-808 Exam.

mm
LPA TEAM
(0 review)
30743
(6086 Reviews)
Ruby for Beginners Read More
mm
LPA TEAM

Ruby for Beginners

mm
LPA TEAM
(0 review)
869
(83 Reviews)
Learn To Write 2D Games with C# and Unity Read More
mm
LPA TEAM

Learn To Write 2D Games with C# and Unity

mm
LPA TEAM
(0 review)
1494
(111 Reviews)
SQL for Beginners: Learn SQL using MySQL and Database Design Read More
mm
LPA TEAM

SQL for Beginners: Learn SQL using MySQL and Database Design

mm
LPA TEAM
(0 review)
186465
(60298 Reviews)
Data Structures and Algorithms:  Deep Dive Using Java Read More
mm
Tim Buchalka

Data Structures and Algorithms: Deep Dive Using Java

mm
LPA TEAM
(0 review)
117427
(22078 Reviews)
Learn Kotlin and Create Games Using the LibGdx Library Read More
mm
LPA TEAM

Learn Kotlin and Create Games Using the LibGdx Library

mm
LPA TEAM
(0 review)
1562
(200 Reviews)
Ethical Hacking Course:  Protect Yourself From Being Hacked Read More
mm
LPA TEAM

Ethical Hacking Course: Protect Yourself From Being Hacked

mm
LPA TEAM
(0 review)
5503
(464 Reviews)
The Complete Xamarin Developer Course:  iOS And Android! Read More
mm
LPA TEAM

The Complete Xamarin Developer Course: iOS And Android!

mm
LPA TEAM
(0 review)
25637
(4584 Reviews)
Android App Development Masterclass using Kotlin Read More
mm
LPA TEAM

Android App Development Masterclass using Kotlin

mm
LPA TEAM
(0 review)
41331
(6096 Reviews)
C Programming For Beginners – Master the C Language Read More
mm
LPA TEAM

C Programming For Beginners - Master the C Language

mm
LPA TEAM
(0 review)
176332
(38326 Reviews)
Ruby on Rails for Beginners Read More
mm
LPA TEAM

Ruby on Rails for Beginners

mm
LPA TEAM
(0 review)
856
(67 Reviews)
Beginning C++ Programming – From Beginner to Beyond Read More
mm
LPA TEAM

Beginning C++ Programming - From Beginner to Beyond

mm
LPA TEAM
(0 review)
337680
(75998 Reviews)
PHP for Beginners Read More
mm
LPA TEAM

PHP for Beginners

mm
LPA TEAM
(0 review)
21890
(4003 Reviews)
Windows Presentation Foundation Masterclass Read More
mm
LPA TEAM

Windows Presentation Foundation Masterclass

mm
LPA TEAM
(0 review)
26791
(5047 Reviews)
Master MATLAB through Guided Problem Solving Read More
mm
LPA TEAM

Master MATLAB through Guided Problem Solving

mm
LPA TEAM
(0 review)
25779
(4201 Reviews)
Machine Learning with Python from Scratch Read More
mm
LPA TEAM

Machine Learning with Python from Scratch

mm
LPA TEAM
(0 review)
4688
(333 Reviews)
Advanced Algorithms in Java Read More
mm
LPA TEAM

Advanced Algorithms in Java

mm
LPA TEAM
(0 review)
8788
(497 Reviews)
Python REST APIs with Flask, Docker, MongoDB, and AWS DevOps Read More
mm
LPA TEAM

Python REST APIs with Flask, Docker, MongoDB, and AWS DevOps

mm
LPA TEAM
(0 review)
19994
(2292 Reviews)
3D Programming with JavaScript and the Three.js 3D Library Read More
mm
LPA TEAM

3D Programming with JavaScript and the Three.js 3D Library

mm
LPA TEAM
(0 review)
6523
(973 Reviews)
Java Enterprise Edition 8 for Beginners course Read More
mm
LPA TEAM

Java Enterprise Edition 8 for Beginners course

mm
LPA TEAM
(0 review)
21280
(3375 Reviews)
HTML and CSS Masterclass Read More
mm
LPA TEAM

HTML and CSS Masterclass

mm
LPA TEAM
(0 review)
2253
(299 Reviews)
ArcPy for Python Developers using ArcGIS Pro Read More
mm
LPA TEAM

ArcPy for Python Developers using ArcGIS Pro

mm
LPA TEAM
(0 review)
9465
(1746 Reviews)
Azure Machine Learning using Cognitive Services Read More
mm
LPA TEAM

Azure Machine Learning using Cognitive Services

mm
LPA TEAM
(0 review)
5358
(488 Reviews)
Learning Bootstrap – From HTML to WordPress Theme Read More
mm
LPA TEAM

Learning Bootstrap - From HTML to Wordpress Theme

mm
LPA TEAM
(0 review)
2966
(170 Reviews)
Search Algorithms in Artificial Intelligence with Java Read More
mm
LPA TEAM

Search Algorithms in Artificial Intelligence with Java

mm
LPA TEAM
(0 review)
2727
(164 Reviews)
The Advanced Xamarin Developer Masterclass Read More
mm
LPA TEAM

The Advanced Xamarin Developer Masterclass

mm
LPA TEAM
(0 review)
6391
(529 Reviews)
The Complete Javascript Course for Developers Read More
mm
LPA TEAM

The Complete Javascript Course for Developers

mm
LPA TEAM
(0 review)
2716
(456 Reviews)
Learn Java Programming Crash Course Read More
mm
LPA TEAM

Learn Java Programming Crash Course

mm
LPA TEAM
(0 review)
20686
(4392 Reviews)
Learn C# for Beginners Crash Course Read More
mm
LPA TEAM

Learn C# for Beginners Crash Course

mm
LPA TEAM
(0 review)
11910
(2223 Reviews)
Python Tkinter Masterclass – Learn Python GUI Programming Read More
mm
Volkan Atış

Python Tkinter Masterclass - Learn Python GUI Programming

mm
LPA TEAM
(0 review)
6109
(769 Reviews)
The Java Design Patterns Course Read More
mm
Jason Fedin

The Java Design Patterns Course

mm
LPA TEAM
(0 review)
13619
(1210 Reviews)
Mastering Intellij IDEA and Android Studio Read More
mm
LPA TEAM

Mastering Intellij IDEA and Android Studio

mm
LPA TEAM
(0 review)
1287
(103 Reviews)
Git & GitHub Masterclass Read More
mm
LPA TEAM

Git & GitHub Masterclass

mm
LPA TEAM
(0 review)
13406
(1821 Reviews)
Python GUI Programming Using PyQt5 Read More
mm
LPA TEAM

Python GUI Programming Using PyQt5

mm
LPA TEAM
(0 review)
5378
(790 Reviews)
Android Firebase Masterclass – Master Google Firebase Read More
mm
LPA TEAM

Android Firebase Masterclass - Master Google Firebase

mm
LPA TEAM
(0 review)
3564
(407 Reviews)
Master CI/CD for Xamarin Read More
mm
LPA TEAM

Master CI/CD for Xamarin

mm
LPA TEAM
(0 review)
492
(51 Reviews)
Master CI/CD for Android Developers Read More
mm
LPA TEAM

Master CI/CD for Android Developers

mm
LPA TEAM
(0 review)
2339
(356 Reviews)
Master CI/CD for iOS Developers Read More
mm
LPA TEAM

Master CI/CD for iOS Developers

mm
LPA TEAM
(0 review)
3190
(518 Reviews)
Master CI/CD for React Native Read More
mm
LPA TEAM

Master CI/CD for React Native

mm
LPA TEAM
(0 review)
3861
(430 Reviews)
Java SE 11 Developer 1Z0-819 OCP Course – Part 1 Read More
mm
LPA TEAM

Java SE 11 Developer 1Z0-819 OCP Course - Part 1

mm
LPA TEAM
(0 review)
28415
(4223 Reviews)
Advanced C Programming Course Read More
mm
LPA TEAM

Advanced C Programming Course

mm
LPA TEAM
(0 review)
41931
(5186 Reviews)
iOS Firebase Masterclass – Real time Database and Firestore Read More
mm
LPA TEAM

iOS Firebase Masterclass - Real time Database and Firestore

mm
LPA TEAM
(0 review)
450
(38 Reviews)
Introduction to Continuous Integration & Continuous Delivery Read More
mm
LPA TEAM

Introduction to Continuous Integration & Continuous Delivery

mm
LPA TEAM
(0 review)
35530
(17394 Reviews)
Java SE 11 Developer 1Z0-819 OCP Course – Part 2 Read More
mm
LPA TEAM

Java SE 11 Developer 1Z0-819 OCP Course - Part 2

mm
LPA TEAM
(0 review)
14755
(1201 Reviews)
Learn Go for Beginners Crash Course (Golang) Read More
mm
LPA TEAM

Learn Go for Beginners Crash Course (Golang)

mm
LPA TEAM
(0 review)
14495
(2541 Reviews)
Python Django 4 Masterclass | Build a Real World Project Read More
mm
LPA TEAM

Python Django 4 Masterclass | Build a Real World Project

mm
LPA TEAM
(0 review)
3480
(368 Reviews)
Python Crash Course:  Gain Real World Developer Skills Now! Read More
mm
LPA TEAM

Python Crash Course: Gain Real World Developer Skills Now!

mm
LPA TEAM
(0 review)
1586
(155 Reviews)
Kotlin Crash Course:  Gain Real World Developer Skills Now! Read More
mm
LPA TEAM

Kotlin Crash Course: Gain Real World Developer Skills Now!

mm
LPA TEAM
(0 review)
367
(15 Reviews)
JavaScript Crash Course: Learn Essential Coding Skills Fast! Read More
mm
LPA TEAM

JavaScript Crash Course: Learn Essential Coding Skills Fast!

mm
LPA TEAM
(0 review)
638
(48 Reviews)
MongoDB Masterclass: Excel in NoSQL & Pass Certification! Read More
mm
LPA TEAM

MongoDB Masterclass: Excel in NoSQL & Pass Certification!

mm
LPA TEAM
(0 review)
1393
(126 Reviews)
Oracle SQL Mastery: From Novice to Certified Database Pro Read More
mm
LPA TEAM

Oracle SQL Mastery: From Novice to Certified Database Pro

mm
LPA TEAM
(0 review)
651
(34 Reviews)
Google BigQuery for Programmers: Analyze & Visualize Read More
mm
LPA TEAM

Google BigQuery for Programmers: Analyze & Visualize

mm
LPA TEAM
(0 review)
336
(23 Reviews)

Leave A Reply Cancel reply

Your email address will not be published. Required fields are marked *


Latest Courses

Google BigQuery for Programmers: Analyze & Visualize

Google BigQuery for Programmers: Analyze & Visualize

Oracle SQL Mastery: From Novice to Certified Database Pro

Oracle SQL Mastery: From Novice to Certified Database Pro

MongoDB Masterclass: Excel in NoSQL & Pass Certification!

MongoDB Masterclass: Excel in NoSQL & Pass Certification!

JavaScript Crash Course: Learn Essential Coding Skills Fast!

JavaScript Crash Course: Learn Essential Coding Skills Fast!

Kotlin Crash Course:  Gain Real World Developer Skills Now!

Kotlin Crash Course: Gain Real World Developer Skills Now!

Python Crash Course:  Gain Real World Developer Skills Now!

Python Crash Course: Gain Real World Developer Skills Now!

logo-eduma-the-best-lms-wordpress-theme

+61 422 512 549

[email protected]

Company

  • About Us
  • Blog
  • Contact
  • Become A Co-Instructor

Links

  • Courses
  • FAQs
  • Contact Us

  • Privacy Policy
  • Terms & Conditions

Would you like to become a Udemy Course Co-Instructor?

Struggling to find students? Let us publish and promote your course to our students.

FIND OUT MORE NOW
Modal title

Message modal