| This Chapter | |
| - | Introduction |
| - | Java Naming Convention |
| - | Those New to Java 5 |
| - | About This Book |
| - | Downloading and Installing Java 6 |
| - | Code Download |
Welcome to Java 6 New Features: A Tutorial.
Java 6, code-named Mustang, is the first Java release for which Sun Microsystems has invited outside developers to contribute code and help fix bugs. (See https://mustang.dev.java.net/collaborate.html). True that the company has in the past accepted contributions from non-employees, like the work of Doug Lea on multithreading, but this is the first time Sun has posted an open invitation. The company admits that they have limited resources, and outside contributors help them cross the finish line sooner.
This didn’t make Mustang an open source project, though. Not yet, even though Sun has announced its plan to open source Java in the near future. The one reason Sun regularly cited in the past was the fear of incompatibility. Making Java open sourced, Sun argued, could lead to a situation where there were many different and incompatible versions of Java. A well-known case of this is how Microsoft, then a Java licensee, added Windows-specific features to Java, thus undermining the one feature that Java was best known for: portability.
Note
On November 13, 2006, after this book was published, Sun Microsystems announced that it had open-sourced Java.
Open-sourced or not, Java SE 6 is here. It is specified in JSR 270, “Java Standard Edition 6 Release Contents” (http://jcp.org/en/jsr/detail?id=270). Unlike other JSRs, however, JSR 270 does not define specific features. Rather, it acts as an “umbrella” JSR that enumerates features in other JSRs. Here are the “member” JSRs.
As there are a myriad of big and small changes involved, it is not possible to cover all in a single book. Therefore, I could only attempt to include the most important ones. The section “About This Book” later in this introduction provide more details about this book.
This introduction also provides two other important sections, “Java Naming Convention” and “Those New to Java 5.” The first talks briefly about Java history, especially with regard to the naming convention. The second is for those who have decided to skip Java 5 entirely. Admittedly, there are several important Java 5 new features that anyone attempting to upgrade to version 6 is strongly recommended to learn. This section provides necessary references. In addition, the appendixes explain the three most important new features in Java 5: enums, generics, and annotations