Java Version Features (A brief History)
A popular interview question for any Java Developer is “what was new in Java version X?” and if you mention that you have worked with 2 different versions of Java then it’s very likely to have a followup question “what was added in the later one?”. So here are the important new features added in each major Java release with their code names(At least I was asked for code name once).
Java Version SE 8
Features
- forEach() method in Iterable interface
- default and static methods in Interfaces
- Functional Interfaces and Lambda Expressions
- Java Stream API for Bulk Data Operations on Collections
- Java Time API
- Collection API improvements
- Concurrency API improvements
- Java IO improvements
- Miscellaneous Core API improvements
Java Version SE 7
Code Name: Dolphin
Release Date: July 28, 2011.
Features
- Strings in switch Statement
- Type Inference for Generic Instance Creation
- Multiple Exception Handling
- Support for Dynamic Languages
- Try with Resources
- Java NIO Package
- Binary Literals and underscore in literals
- Diamond Syntax
- Automatic null Handling
Java Version SE 6
Code Name: Mustang
Release Date: December 11, 2006.
Features
- Scripting Language Support
- JDBC 4.0 API
- Java Compiler API
- Pluggable Annotations
- Native PKI, Java GSS, Kerberos and LDAP support.
- Integrated Web Services.
- Lot more enhancements.
J2SE Version 5.0
Code Name: Tiger
Release Date: September 30, 2004.
Features
- Generics
- Enhanced for Loop
- Autoboxing/Unboxing
- Typesafe Enums
- Varargs
- Static Import
- Metadata (Annotations)
- Instrumentation
J2SE Version 1.4
Code Name: Merlin
Release Date: February 6, 2002 (first release under JCP).
Features
- XML Processing
- Java Print Service
- Logging API
- Java Web Start
- JDBC 3.0 API
- Assertions
- Preferences API
- Chained Exception
- IPv6 Support
- Regular Expressions
- Image I/O API
J2SE Version 1.3
Code Name: Kestrel
Release Date: May 8, 2000.
Features
- Java Sound
- Jar Indexing
J2SE Version 1.2
Code Name: Playground
Release Date: December 8, 1998.
Features
- Collections framework.
- Java String memory map for constants.
- Just In Time (JIT) compiler.
- Jar Signer for signing Java ARchive (JAR) files.
- Policy Tool for granting access to system resources.
- Java Foundation Classes (JFC) which consists of Swing 1.0, Drag and Drop, and Java 2D class libraries.
- Java Plug-in
- Scrollable result sets, BLOB, CLOB, batch update, user-defined types in JDBC.
- Audio support for Applets.
JDK Version 1.1
Release Date: February 19, 1997
Features
- JDBC (Java Database Connectivity)
- Inner Classes
- Java Beans
- RMI (Remote Method Invocation)
- Reflection (introspection only)
JDK Version 1.0
This is where it all started. The first official release of Java as a Programming language.
Code Name: Oak
Release Date: January 23, 1996.