Oracle has released the Java Platform, Standard Edition 7 Developer Preview, the first major revision to Java in almost five years. Java SE 7 is the next major release of the Java SE platform and is currently available as an early access release. The two principal products in the Java SE platform are Java Development Kit (JDK) and Java SE Runtime Environment (JRE). Oracle Java SE Runtime Environment (JRE) now supports IE 7+, Firefox 3.6+ and Chrome browsers.
About 1.1 billion desktops run Java, according to Oracle, with 930 million Java Runtime Environments downloaded each year.
- Divide and Conquer Parallelism with the Fork/Join Framework : The Fork/Join framework in Java SE 7 supports the automation distribution of recursively-decomposable tasks across an arbitrary number of processor cores, allowing many kinds of divide-and-conquer algorithms to be parallelized with minimal effort.
- New File System API (NIO 2.0 APIs): JDK 7 provides a new and easy-to-use API to the file system that addresses many of the long-standing issues and shortcomings that existed in previous releases. The platform supports file permissions, symbolic links, scalable access to large directories, bulk access-to-file attributes, methods to copy or move files, file change notification, path manipulation, an API for doing recursive operations etc.
- Support for dynamically-typed languages : Extensions to the JVM, the Java language, and the Java SE API to support the implementation of dynamically-typed languages at performance levels.
- Strict class-file checking : class files of version 51 (SE 7) or later must be verified with the typechecking verifier.
- Small language enhancements : A set of small language changes intended to simplify common, day-to-day programming tasks: Strings in switch statements, try-with-resources statements, improved type inference for generic instance creation (“diamond”), simplified varargs method invocation, better integral literals, and improved exception handling (multi-catch).
- Upgrade class-loader architecture : Modifications to the ClassLoader API and implementation to avoid deadlocks in non-hierarchical class-loader topologies.
- Method to close a URLClassLoader : A method that frees the underlying resources, such as open files, held by a URLClassLoader. [source]