Java 1.5 (Tiger) Information

Java 1.5 (codenamed Tiger) is the next major release of the Java language. Tiger is scheduled for release sometime in the second half of 2003. There's going to be some really exiting stuff in this release, but it's hard to find details.

The standard list of new features in Java Tiger is generics, enumerations (yeah!), autoboxing of primitive types so they can be added to collections, Collection iteration like a "for each" construct (very welcome), Doug Lea's conncurrency library, and better graphics libraries. Unfortunately, it seems that a better Calendar class has been rejected by the Tiger steering commitee.

Here's some information about what will be in Java 1.5:

Java 1.5? -- This thread on the Java Developer Connection has some good explaination of what Java 1.5's new features mean.

From Mantis to Tiger -- a maketriod summary of the new features of Java 2 Platform, Standard Edition(TM) 1.5(TM) "Tiger"(TM).

Interview with Joshua Bloch from Feburary 2002. This includes some questions about Java 1.5, but it was a long time ago so Josh wasn't certain what would be ready for inclusion yet.

Java Specification Request 175 "A Metadata Facility for the JavaTM Programming Language" describes what the new metadata features of Java 1.5 will be. I'm still a little hazy on how this will work, but a thread on Lambda the Ultimate and The Server Side helped clear it up for me.

JSR 014 "Add Generic Types To The Java Programming Language". According to the Generic Java page, "Sun has put forward a proposal to Add Generic Types To The Java Programming Language...GJ is one of the leading proposals being considered. The process is spearheaded by Gilad Bracha, one of the GJ designers." Back in Feburary, Josh Bloch said in his interview: "[I]t looks like we'll get something very similar to gj." I'm unsure if this is still true.

Overview of package util.concurrent Release 1.3.1 from Doug Lea. Lea is the author of Conncurrent Programming in Java. JSR 166 "Concurrency Utilities" is based on util.concurrent.