JDK 7 favicon
All About JDK 7
JDK 7 • 2011 • Java 7
try-with-resourcesUPD NIO.2Fork/JoinG1 GCinvokedynamic

JDK 7 and the shift from JDK 6

Project Coin language tweaks: diamond operator, try-with-resources, switch on strings, multi-catch, binary literals. NIO.2. Fork/Join. invokedynamic (enables future lambdas). G1 GC experimental.

Why JDK 7 mattered

The release in context

Project Coin language tweaks: diamond operator, try-with-resources, switch on strings, multi-catch, binary literals. NIO.2. Fork/Join. invokedynamic (enables future lambdas). G1 GC experimental.

try-with-resourcesUPD NIO.2Fork/JoinG1 GCinvokedynamic
  • Project Coin language tweaks: diamond operator, try-with-resources, switch on strings, multi-catch, binary literals. NIO.2. Fork/Join. invokedynamic (enables future lambdas). G1 GC experimental.
  • Key release highlights included try-with-resources, UPD NIO.2, Fork/Join, G1 GC.
  • Compared with JDK 6, the most visible shifts included G1 GC (experimental), Binary Literals, Multi-catch Exceptions.
  • invokedynamic JVM opcode enables lambda expressions in JDK 8. Fork/Join enables parallel algorithms.
  • The kit evolved toward more modern filesystem APIs and a more flexible JVM story for dynamic language support and better library design.
Platform stack

JDK 7 architecture preview

This larger diagram expands the smaller JDK badge into a layered platform view showing how the development kit, runtime, virtual machine, APIs, tools, and supporting subsystems fit together for this release.

Previous-version diff

What changed from JDK 6 to JDK 7

The kit evolved toward more modern filesystem APIs and a more flexible JVM story for dynamic language support and better library design.

Java Language Features

  • Binary Literals appeared in JDK 7, adding a new capability in java language features.
  • Multi-catch Exceptions appeared in JDK 7, adding a new capability in java language features.
  • Underscores in Literals appeared in JDK 7, adding a new capability in java language features.
  • jdeps (early) appeared in JDK 7, adding a new capability in java language features.

lang and util Base Libraries

  • java.util.concurrent.ForkJoinPool appeared in JDK 7, adding a new capability in lang and util base libraries.
  • java.nio.file (NIO.2) was updated in JDK 7, showing active movement in lang and util base libraries.
  • java.sql was updated in JDK 7, showing active movement in lang and util base libraries.
  • java.util.concurrent was updated in JDK 7, showing active movement in lang and util base libraries.

Other Base Libraries

  • Fork / Join Framework appeared in JDK 7, adding a new capability in other base libraries.
  • NIO.2 (Files API) was updated in JDK 7, showing active movement in other base libraries.
  • java.util.concurrent was updated in JDK 7, showing active movement in other base libraries.
  • Compiler API (JSR-199) carried forward from JDK 6 and settled into the baseline by JDK 7.
Matrix slice

Quick comparison table: JDK 6 vs JDK 7

This side-by-side view turns the source evolution matrix into a faster way to see which language, tooling, runtime, and platform layers moved between these two releases.

Area Component JDK 6 JDK 7 Why it stands out
JVM: Execution Engine & GC G1 GC (experimental) Not present NEW G1 GC (experimental) appeared in JDK 7, adding a new capability in jvm: execution engine & gc.
Java Language Features Binary Literals Not present NEW Binary Literals appeared in JDK 7, adding a new capability in java language features.
Java Language Features Multi-catch Exceptions Not present NEW Multi-catch Exceptions appeared in JDK 7, adding a new capability in java language features.
Other Base Libraries Fork / Join Framework Not present NEW Fork / Join Framework appeared in JDK 7, adding a new capability in other base libraries.
lang and util Base Libraries java.util.concurrent.ForkJoinPool Not present NEW java.util.concurrent.ForkJoinPool appeared in JDK 7, adding a new capability in lang and util base libraries.
Integration Libraries JDBC 4.1 Not present UPD JDBC 4.1 was updated in JDK 7, showing active movement in integration libraries.
Other Base Libraries NIO.2 (Files API) Not present UPD NIO.2 (Files API) was updated in JDK 7, showing active movement in other base libraries.
Tools & Tool APIs JMC Not present UPD JMC was updated in JDK 7, showing active movement in tools & tool apis.
User Interface Toolkits Java 2D (GPU accel) Not present UPD Java 2D (GPU accel) was updated in JDK 7, showing active movement in user interface toolkits.
lang and util Base Libraries java.nio.file (NIO.2) Not present UPD java.nio.file (NIO.2) was updated in JDK 7, showing active movement in lang and util base libraries.
Integration Libraries JAX-WS Not present Present JAX-WS appeared in JDK 7, adding a new capability in integration libraries.
Tools & Tool APIs JMC (early) NEW Present JMC (early) carried forward from JDK 6 and settled into the baseline by JDK 7.
User Interface Toolkits Desktop API NEW Present Desktop API carried forward from JDK 6 and settled into the baseline by JDK 7.
Structured comparison

Grouped reading of the release shift

invokedynamic JVM opcode enables lambda expressions in JDK 8. Fork/Join enables parallel algorithms.

Java Language Features
New in JDK 7
  • Binary Literals
  • Multi-catch Exceptions
  • Underscores in Literals
  • jdeps (early)
  • switch on String
Updated by JDK 7
  • Generics (Diamond <>)
  • Annotations
lang and util Base Libraries
New in JDK 7
  • java.util.concurrent.ForkJoinPool
  • javax.script
  • javax.tools
  • javax.xml.ws
Updated by JDK 7
  • java.nio.file (NIO.2)
  • java.sql
  • java.util.concurrent
  • javax.swing
  • javax.xml.bind
Other Base Libraries
New in JDK 7
  • Fork / Join Framework
  • Compiler API (JSR-199)
  • Pluggable Annotation Processing
Updated by JDK 7
  • NIO.2 (Files API)
  • java.util.concurrent
Historical platform profile

Release narrative

Project Coin language tweaks: diamond operator, try-with-resources, switch on strings, multi-catch, binary literals. NIO.2. Fork/Join. invokedynamic (enables future lambdas). G1 GC experimental.

invokedynamic JVM opcode enables lambda expressions in JDK 8. Fork/Join enables parallel algorithms.

try-with-resourcesUPD NIO.2Fork/JoinG1 GCinvokedynamic
Why it mattered later

Why JDK 7 matters in the JDK timeline

This release fits into the steady JDK cadence where tooling, runtime behavior, and delivery capabilities evolve one step at a time.

  • JDK 7 sits in the timeline as a bytecode and i/o milestone, which shaped how teams evaluated and adopted it.
  • It is commonly remembered for try-with-resources, UPD NIO.2, Fork/Join.
  • Compared with JDK 6, it gives a clearer picture of how the JDK platform was evolving release by release.
  • invokedynamic JVM opcode enables lambda expressions in JDK 8. Fork/Join enables parallel algorithms.
Related pages

Continue through the platform story