Monday, May 5, 2014

Java Version History - With Java Interesting Things

Posted by Sharath Chandra
1. Brief Introduction of Java History


1.1. Birth of Java

1.1.1. Java 1.0

You know when Java got birth - it was in 1995 which was a Beta version, but the first stable version was released on Jan 23 1996 which was called as OAK
Private and Protected keywords could be used together to create yet another form of protection that would restrict access to methods or variables solely to subclasses of a given class. Though they removed in 1.0.2

1.1.2. Java 1.1

During the Feb 1997, JDK 1.1 (no code name) got released and came up with some new additions such as 
Inner Classes 
Reflection (Introspection) 

Java was originally developed by James Gosling at Sun Microsystems

1.1.3. Java 1.2 aka J2SE 1.2

From 1.2 (Dec 1998) version they started version naming J2SE (Java 2 Platform, Standard Edition) in order to differentiate the other products such as J2EE or J2ME. 
Major additions: 
strictfp keyword
Swing API 

James Gosling, Mike Sheridan, and Patrick Naughton initiated the Java language project in June 1991

1.1.4. J2SE 1.3

In the new Millennium they released the J2SE 1.3 (in may 2000) and with some advanced adding to the editions.   
Code Name: KESTREL (it's a type of bird)
Major additions: 
Java Sound
RMI - CORBA Integration
JNDI and many more... 

Java Specialty is "Write Once, Run Anywhere" (WORA), providing no-cost run-times on popular platforms

1.1.5. J2SE 1.4

In 2002 they come up with new features where it has some major library changes included in this version.    
Code Name: MERLIN
Major additions: 
Assert Keyword
Regular expressions 
Logging API
Image IO API 
XML Parsers
Preferences API

Oracle Corporation is the current owner of the official implementation of the Java SE platform, following their acquisition of Sun Microsystems on January 27, 2010

1.1.6. J2SE 1.5 aka J2SE5 

In order to maintain more security they changed the version numbering to J2SE 5 during Sept 2004. It has come up with many major additions to the version.     
Code Name: TIGER
Major additions: 
Meta Data aka Annotations 
Auto Boxing
Varargs and for each
Static Imports 
SWING framework 

Sun sued in 1997, and in 2001 won a settlement of US$20 million, as well as a court order enforcing the terms of the license from Sun. As a result, Microsoft no longer ships Windows with Java.

1.1.7. J2SE6

Throughout the world still all major undergoing projects using this J2SE6 which was released end of the year 2006. 
Code Name: MUSTANG
Major additions: 
WebService Improvements 
Java Compiler API
SwingWorker API 
Performance improvements to many Java Lib and Swing 
Script Lang Support

Java 6 reached the end of its supported life in February 2013.

1.1.8. J2SE7

This is the first version from Oracle after SUN Microsystems merged into Oracle. Mid of the 2011 they come up with this Java7 
Code Name: DOLPHIN
Major additions: 
Strings in switch
Automatic resource management in try-statement
Improved type inference for generic instance creation, aka the diamond operator <>
Simplified varargs method declaration
Binary integer literals
Allowing underscores in numeric literals
Catching multiple exception types and rethrowing exceptions with improved type checking

Java is call by value

1.1.9. Java SE8 aka Java8

This is the current stable version of Java which is released on 18th March 2014
Code Name: SPIDER (not officially but among developers!)
Major additions: 
Lambda Expressions under Project Lambda
Project Nashorn - a JavaScript Runtime code within application 
java.util.Stream API 
Date and Time API
many more...

Java 8 is not supported on Windows XP