Tell me more ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

What are the major differences in between Java version in terms of software development? Where can one find a summary of the most important changes related to programming?

The Release Notes such as http://www.oracle.com/technetwork/java/javase/releasenotes-136954.html can be hard to read.

For example there is new code structure "for each" in Java 1.5.

share|improve this question

2 Answers

up vote 20 down vote accepted

This is a summary of the excellent Wikipedia article about the Java version history. It is highly selective (and biased on what I know and use), otherwise it would simply turn out to be a copy of the article.

The bold parts are what really brought the language forward as a whole. As you see, not every release has bold parts.

Java 8 (a.k.a 1.8)

JSR 337, features, milestones

Upcoming release, not yet final.

Language changes:

  • lambda expressions (JSR 335, includes method handles)
  • continuation of Project Coin (small language improvements)
  • annotations on Java types

Library changes:

Java 7 (a.k.a 1.7)

JSR 336, features and enhancements

Language changes:

Library changes:

Platform changes:

Java 6 (a.k.a 1.6)

JSR 270. features and enhancements

Mostly incremental improvements to existing libraries, no new language features (except for the @Override snafu).

Java 5 (a.k.a 1.5)

JSR 176, features and enhancements

Language Changes:

Library changes:

  • concurrency utilities in java.util.concurrent

Java 1.4

JSR 59

Language changes:

Library changes:

Java 1.3

Mostly minor improvements, really.

Platform changes:

  • HotSpot JVM: improvement over the original JIT

Java 1.2

Language changes:

Library changes:

Platform changes

  • a real JIT, greatly improving speed

Java 1.1

Language changes:

  • inner classes

Library changes:

  • AWT event changes
  • JDBC, RMI
  • reflection

Java 1.0

Initial release, everything is new ;-)

share|improve this answer
Wow! You've convinced me that I should have done better.+1 – Axel Kemper Apr 2 at 15:18
2  
The explanation for why Java 6 had so little changes seems to be at JSR 270 page: it looks like back then, they were experimenting with idea of time-driven releases instead of feature-driven: "goal is to ship feature releases on a regular 18-24 month cycle..." – gnat Apr 3 at 9:15
Excellent Answer. If you place in descending order (8-7-6-5-1.4-1.3-1.2-1.1-1.0) would be better. – Mahbubur R Aaman Apr 3 at 9:16
@gnat: that sounds about right, but the answer is stuffed enough as it is, I'd like to keep additional info like this out of the list. – Joachim Sauer Apr 3 at 9:22
1  
Hey Axel, please do not feel bad, at all. Certainly let's blame the web! Why can't we republish the contet from Wikipedia here on PE? Why do we have to resort to copy and paste? Why is there no mechanism to display content from Wikipedia in pE? IMO this should be basic stuff. Imagine java 1.9 comes out what do you think. Which page will be kept uptodate ?this answer is just copy and paste, programmers should avoid it, no? – AndreasScheinert Apr 3 at 12:27
show 2 more comments

In the compiled Java documentation from http://javadoc.allimant.org, you'll find a what's new? section in the table of contents.

A Java Version History is available on Wikipedia.

share|improve this answer
2  
Whilst this may theoretically answer the question, it would be preferable to include the essential parts of the answer here, and provide the links for reference. – Joachim Sauer Apr 2 at 12:06
1  
Yes, I agree. But I don't see a practical way how to digest/re-format/edit the 16 pages of Wikipedia's Java Version History into a nice article. – Axel Kemper Apr 2 at 12:15

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.