Java SE, the Java Platform Standard Edition, is the core of the Java ecosystem. It defines the Java language specification, the Java Virtual Machine (JVM), and the Java Class Library: the standard library that ships with every Java installation and provides the building blocks for virtually all Java software.
When most developers say “Java,” they mean Java SE. It is the edition used for desktop applications, command-line tools, server-side applications, libraries, and frameworks. Spring Boot, Quarkus, Micronaut, Apache Kafka, Apache Spark, and countless other widely-used Java technologies run on Java SE.
Versioning and Releases
Since Java 9, a new Java SE version ships every six months, with Long-Term Support (LTS) versions released every two years.
| Java SE version | Type | Status |
|---|---|---|
| Java 8 | LTS | Widely deployed; community EOL passed, supported by vendors including Azul |
| Java 11 | LTS | Community EOL passed; supported by vendors including Azul |
| Java 17 | LTS | In production use across many enterprises |
| Java 21 | LTS | Current primary LTS release |
| Java 25 | LTS | Latest LTS (2025) |
LTS releases receive extended security and bug-fix updates, making them the preferred choice for production deployments. The Java SE Development Kit (JDK) is the primary artifact developers download and install. It includes the Java compiler (javac), the Java runtime environment, debugging tools, monitoring utilities, and the full class library.
The Java SE Class Library
Java SE provides APIs across a broad range of domains:
| Package | Purpose |
|---|---|
| java.lang | Fundamental types, strings, threads, the object model |
| java.util | Collections, dates, utilities, optional |
| java.io / java.nio | File and stream I/O, channels, buffers |
| java.net | Networking, sockets, HTTP client |
| java.sql | Database connectivity (JDBC) |
| java.security | Cryptography, access control, certificates |
| java.util.concurrent | Thread management, locks, executors, parallel programming |
| java.util.stream | Functional-style data processing |
| java.time | Date and time API (Java 8+) |
Modern Java SE Features
| Feature | Introduced | What it does |
|---|---|---|
| Lambda expressions and Stream API | Java 8 | Functional-style data processing, reduced boilerplate |
| Module system (JPMS) | Java 9 | Explicit dependencies, encapsulation |
| var (local variable type inference) | Java 10 | Type inference for local variables |
| Text blocks | Java 15 | Multi-line string literals |
| Records | Java 16 | Compact syntax for immutable data carriers |
| Sealed classes | Java 17 | Restricted class hierarchies |
| Pattern matching | Java 21 | Type patterns in instanceof and switch |
| Virtual threads | Java 21 | Lightweight threads for high-concurrency workloads without thread-pool tuning |
Virtual threads (Project Loom, shipped in Java 21) are the most significant recent addition for enterprise Java. They enable hundreds of thousands of concurrent operations on a single JVM, which directly benefits high-throughput REST services, AI model calls, and any I/O-bound workload.
Choosing a JDK Distribution
Multiple distributions of the JDK are available, all built from the same OpenJDK source and tested against the Java SE Technology Compatibility Kit (TCK):
| Distribution | Vendor | Key characteristic |
|---|---|---|
| Oracle JDK | Oracle | Commercial license required for production; per-employee model |
| Azul Core (Azul Zulu) | Azul | Certified OpenJDK; up to 70 percent less expensive than Oracle Java; commercial support, security patches, long-term maintenance |
| Amazon Corretto | AWS | Free, optimized for AWS |
| Microsoft Build of OpenJDK | Microsoft | Free, optimized for Azure |
| Eclipse Temurin | Eclipse Adoptium | Community builds, no commercial support |
The choice of JDK distribution affects support, patch availability, licensing, and performance. LTS versions (8, 11, 17, 21, 25) are recommended for production stability. For organizations with Oracle Java SE audit exposure, migrating to Azul Core eliminates the per-employee licensing model and the audit surface.
How Azul Can Help
Azul Core (Azul’s builds of OpenJDK, including Azul Zulu) is a certified OpenJDK distribution available across all Java SE LTS versions and all major operating systems and CPU architectures. Up to 70 percent less expensive than Oracle Java SE licensing, with commercial support, security patches (quarterly CPUs plus monthly CSPUs), and extended support for Java 6 and 7.
Azul Payara Server is a Jakarta EE 11 certified application server that runs on Java SE. For teams building enterprise applications on Java SE, Azul Payara Server provides the standardized Jakarta EE API set (Servlet, JPA, JAX-RS, CDI) on top of the JDK, with transparent per-vCore pricing and monthly security patches from a registered CNA. One vendor for the JDK and the application server.
Azul Prime is a high-performance Java SE runtime built around the C4 (Continuously Concurrent Compacting Collector) garbage collector. For applications where GC pause latency or throughput are concerns (high-traffic REST services, data processing, AI inference), Azul Prime delivers consistently low latency that standard GC algorithms cannot match. ReadyNow technology eliminates the JVM warm-up period.
Azul Intelligence Cloud provides runtime visibility into which Java SE library versions are actively executing in production, enabling security teams to identify and respond to CVEs with precision, without the false positives of static analysis.