O'Reilly logo
live online training icon Live Online training

Java Programming Crash Course: Including Features from Java 9 to 11

Learn concepts of modern Java and how to build your own standalone applications

Lukasz Madrzak

This course is a detailed introduction to Java, led by expert Łukasz Mądrzak, to help you kick-start your Java career. We will begin with a brief introduction to Java to help you understand why Java is so popular and in high-demand. We will then move on to writing our own Hello World application, which we will expand upon by using lists, different types of variables, loops, and streams.

The second part of the course will get you acquainted with the most important features released from Java 9 to Java 11 and guide you in using them straight away.

What you'll learn-and how you can apply it

  • New Java Syntax
  • Variables in Java
  • Loops
  • Streams
  • New HTTP Client (Java 11)
  • Type Free Variables (Java 10)
  • Stream and Collections enhancements (Java 9)

This training course is for you because...

This will help you learn Java quickly and efficiently with the guidance of an expert with years of experience. You'll get to grips with the most important features released in Java 9 to Java 11.


  • Java 11 installed
  • IntelliJ IDEA installed and configured to use Java 11
  • JShell setup in the Terminal/Command Prompt

Materials, downloads, or supplemental content needed in advance


About your instructor

  • Lukasz Madrzak holds an Honours BSc degree in Computer Science from University College Cork in Ireland. He has been working with Android since 2011 when he first started making his own apps. Łukasz was a Senior Android Developer in an IoT company that created a high-performance Android app for thousands of customers until recently.

    Łukasz has then started his own company where he plans, designs and develops technology for businesses based in Ireland.


The timeframes are only estimates and may vary according to how the class is progressing

Section 1: Introduction to Java (1hr 30mins)

Lesson 1. (15 mins) - Introduction to Java - OOP concepts (classes, constructors, overloading and overriding)

Lesson 2. (5 mins) - JShell and Hello World

Lab 1. (5 mins) - Using JShell to write a simple program

Lesson 3. (10 mins) - Hello World - Compiling and Running in an IDE

Lab 2. (10 mins) - Write, compile and run your Hello World in Java

Lesson 4. (15 mins) - Data Types (primitive & object types) & Variables (local and instance)

Lab 3. (10 mins) - Exercise with variables

Lesson 5. (10 mins) - Lists & Loops (for, while, for each)

Lab 4. (10 mins) - Exercise with loops

Section 2: Java 9 - 11 features (35mins)

Lesson 6. (5 mins) - Java 9 Features - New HTTP client

Lesson 7. (5 mins) - Java 10 Features - Local-Variable Type Inference

Lesson 8. (10 minutes) - Java 11 Features - String methods (repeat, isBlank, strip, lines) - Epsilon Garbage Collector

Lab 5. (10 minutes) - Java 9 - 11 features

Q&A (5 mins)