Latest in branch Java SE 17
17.0.19
Released 21 Apr 2026
(28 days ago)
SoftwareJava/Java SE
BranchJava SE 17
StatusLTS
Supported
Class file version61.0
Initial release17
14 Sep 2021
(4 years ago)
Latest release17.0.19
21 Apr 2026
(28 days ago)
End of
premier support
Sep 2026
(Ends in 4 months)
End of
extended support
Sep 2029
(Ends in 3 years, 4 months)
Release noteshttps://www.oracle.com/java/technologies/javase/17-0-19-relnotes.html
Documentationhttps://docs.oracle.com/javase/17
Downloadhttps://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html
Java/Java SE Java SE 17 ReleasesView full list

What is New in Java 17

Java 17 is a Long-Term Support (LTS) release that brings several important language improvements, security enhancements, and performance updates. It stabilizes features like sealed classes and pattern matching for switch, removes outdated components, and prepares the platform for modern development needs.

Sealed Classes (Standard)

Sealed classes and interfaces restrict which other classes or interfaces may extend or implement them. This provides better control over inheritance and makes code more predictable.

public abstract sealed class Shape
    permits Circle, Rectangle, Square {
    // class body
}

public final class Circle extends Shape { ... }
public final class Rectangle extends Shape { ... }
public non-sealed class Square extends Shape { ... }

Pattern Matching for switch (Preview)

Switch statements and expressions now support type patterns and guarded patterns. This reduces boilerplate and handles null cases safely.

String formatted = switch (obj) {
    case Integer i -> "int " + i;
    case Long l    -> "long " + l;
    case Double d  -> "double " + d;
    case String s  -> "String " + s;
    default        -> obj.toString();
};

Security Enhancements

Context-Specific Deserialization Filters

New factory method allows different filters for each deserialization operation, improving security against malicious data streams.

Stronger Pseudorandom Number Generators

New implementations provide better randomness for security-sensitive applications.

Deprecate the Security Manager for Removal

The old Security Manager is marked for future removal as it is rarely used and replaced by modern alternatives.

Platform and Runtime Updates

Support for macOS/AArch64

Official ports for Apple Silicon (ARM-based Macs) with improved performance.

New macOS Rendering Pipeline

Switches to the Metal API for better graphics performance on macOS.

Foreign Function & Memory API (Incubator)

Safe and efficient access to native code and memory outside the Java heap.

Vector API (Incubator)

Reliable runtime compilation for high-performance vector operations.

Removals and Deprecations

Feature Status
RMI Activation Mechanism Removed
Experimental AOT and JIT Compiler (jaotc) Removed
Security Manager Deprecated for removal
Old Applets API Further deprecated

Other Notable Changes

  • Hidden classes cannot be discovered by default for better encapsulation.
  • Improved support for containers with better CPU awareness.
  • Enhanced pseudo-random number generators with new algorithms.
  • Updated flight recorder for better low-overhead profiling.
  • Thousands of bug fixes and small performance improvements.

Why Choose Java 17

As a Long-Term Support release, Java 17 offers extended updates and stability for production environments. It combines mature language features with modern security and platform support, making it a solid upgrade path from Java 11 or earlier versions. Developers gain cleaner code through sealed classes and pattern matching while benefiting from improved performance on new hardware.

Releases In Branch Java SE 17

VersionRelease date
17.0.1921 Apr 2026
(28 days ago)
17.0.1820 Jan 2026
(3 months ago)
17.0.1721 Oct 2025
(6 months ago)
17.0.1615 Jul 2025
(10 months ago)
17.0.1515 Apr 2025
(1 year ago)
17.0.1421 Jan 2025
(1 year ago)
17.0.1315 Oct 2024
(1 year ago)
17.0.1216 Jul 2024
(1 year ago)
17.0.1116 Apr 2024
(2 years ago)
17.0.1016 Jan 2024
(2 years ago)
17.0.917 Oct 2023
(2 years ago)
17.0.818 Jul 2023
(2 years ago)
17.0.718 Apr 2023
(3 years ago)
17.0.617 Jan 2023
(3 years ago)
17.0.518 Oct 2022
(3 years ago)
17.0.4.118 Aug 2022
(3 years ago)
17.0.419 Jul 2022
(3 years ago)
17.0.3.102 May 2022
(4 years ago)
17.0.319 Apr 2022
(4 years ago)
17.0.218 Jan 2022
(4 years ago)
17.0.119 Oct 2021
(4 years ago)
1714 Sep 2021
(4 years ago)