Learn Java
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
-
Java Platform Evolution
Java has come a long ways since Java 8. Let's go over some of this evolution.
-
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.
-
Inheritance
Leveraging inheritance in Java applications.
-
Interfaces
Creating and using interfaces.
-
Generics
Working with parameterized types.
-
Lambda Expressions
Using Lambda Expressions to improve the readability of your code.
-
Annotations
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.
-
Packages
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.
-
Exceptions
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.
-
Regular Expressions
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
-
Modules
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.
-
JPackage
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.