Running Your First Java Application
Getting Started with Java
Creating your first Java application.
Launching Single-File Source-Code Programs
Launching Single-File Source-Code Java programs with the Java launcher.
Jshell - The Java Shell Tool
jshell interactively evaluate declarations, statements, and expressions of the Java programming language in a read-eval-print loop (REPL).
Staying Aware of New Features
Getting to Know the Language
Objects, Classes, Interfaces, Packages, and Inheritance
Introducing the object oriented programming.
Java Language Basics
Getting to know the basics of the Java language.
Using Record to Model Immutable Data
How to model your immutable data with records to make your code simpler and more readable.
Classes and Objects
Defining your own classes, declaring member variables, methods, and constructors.
Numbers and Strings
Understanding numbers, characters and strings of characters.
Leveraging inheritance in Java applications.
Creating and using interfaces.
Working with parameterized types.
Using Lambda Expressions to improve the readability of your code.
Annotations is a form of metadata, provide data about a program that is not part of the program itself. Annotations have no direct effect on the operation of the code they annotate.
How to bundle classes and interfaces into packages, how to use classes that are in packages, and how to arrange your file system so that the compiler can find your source files.
Using Pattern Matching
All about pattern matching.
Using exceptions to handle errors and other exceptionnal events.
Mastering the API
The Collections Framework
Getting to know the Collections Framework to store and retrieve data in collections and hashmaps.
The Stream API
Process your in-memory data with Java streams and collectors. Process them faster with parallel streams.
Provides a general overview of regular expressions. It also introduces the core classes that comprise this API.
The Date Time API
Covers the Date Time API added to the JDK 8, including the core concepts and classes.
Organizing your Application
Understand how the module system shapes the JDK and how you can use it to make your code base more maintainable.
Creating Runtime and Application Images with JLink
Learn how to use the command line tool
jlinkto create custom-made runtime images or self-contained application images.
Getting to know the JVM
The Core JDK Tools
Learn about the tools the JDK gives you to compile, run, analyze and monitor your code.
The Monitoring Tools
Learn about the tools the JDK gives you to monitor your application.
Packaging your application to create a native installer.
The Security Tools
Setting security policies with the JDK tools and commands.
The Troubleshooting Tools
Learn about the tools the JDK gives you to troubleshoot Java applications and the Java Virtual Machine (JVM).
Garbage Collection in Java Overview
Understanding the key aspects of how garbage collection works in Java and how to tune garbage collection.
Class-Data Sharing and Application Class-Data Sharing in Hotspot
Understanding how to use Class-Data Sharing in HotSpot to improve JVM performance.