Running Your First Java Application
Staying Aware of New Features
Using the Preview Features Available in the JDK
How to compile and execute the preview features available in the JDK.
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
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 `jlink` to 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.