Java SE 7
- Codename Dolphin.
- Releasing on July 28, 2011.
- Better integral literals allowing for underscores as digit separators.
- Strings in switch Statements.
- Improved Type Inference for Generic Instance Creation.
- Improved Compiler Warnings and Errors When Using Non-Reifiable Formal Parameters with Varargs Methods.
- Catching Multiple Exception Types and Rethrowing Exceptions with Improved Type Checking .
- JVM support for dynamic languages, following the prototyping work currently done on the Multi Language Virtual Machine Compressed 64-bit pointers. Available in Java 6 with -XX:+UseCompressedOops.
- Concurrency and collections updates: a lightweight fork/join framework, flexible and reusable synchronization barriers, transfer queues, concurrent linked double-ended queues, and thread-local pseudo-random number generators.
- New file I/O library to enhance platform independence and add support for metadata and symbolic links. The new packages are java.nio.file and java.nio.file.attribute.A fully-functional and supported NIO.2 filesystem provider for zip and jar files.
- A portable implementation of the standard Elliptic Curve Cryptographic (ECC) algorithms, so that all Java applications can use ECC.
- An XRender pipeline for Java 2D, which improves handling of features specific to modern GPUs.
- Enhanced library-level support for new network protocols, including SCTP(Stream Control Transmission Protocol) and Sockets Direct Protocol.
- Upgrade the components of the XML stack to the most recent stable versions: JAXP 1.4, JAXB 2.2a, and JAX-WS 2.2
- Upgrade the supported version of Unicode to 6.0
- Locale enhancement: upgrade the java.util.Locale class to support IETF BCP 47 (Tags for Identifying Languages) and UTR 35 (Local Data Markup Language).
- Separate user locale and user-interface locale: upgrade the handling of locales to separate formatting locales from user-interface language locales.
- 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.
- Upgrade the networking code to use the Windows Vista IPv6 stack, when available, in preference to the legacy Windows stack.
- Gervill sound synthesizer: drop the old, proprietary, encumbered sound synthesizer in favor of Gervill, a synthesizer created as a proposal for the Audio Synthesis Engine Project.
- Enhancements to the existing com.sun.management MBeans to report the recent CPU load of the whole system, the CPU load of the JVM process, and to send JMX notifications when GC events occur.
- Introduction to JDBC 4.1 with the following features:
- The ability to use a try-with-resources statement to automatically close resources of type Connection, ResultSet, and Statement.
- RowSet 1.1: The introduction of the RowSetFactory interface and the RowSetProvider class, which enable you to create all types of row sets supported by your JDBC driver.
Find the Java 7 deprecated code @ http://download.oracle.com/javase/7/docs/api/deprecated-list.html
Oracle has published @ 27-June-2011 , the first release candidate for JDK 7 : http://jdk7.java.net/download.htmlx
Java SE 6 (December 11, 2006)
- Codename Mustang.
- As of this version, Sun replaced the name “J2SE” with Java SE and dropped the “.0? from the version number. Internal numbering for developers remains 1.6.0.
- The current revision is Update 26 which was released in June 2011.
- Support for older Win9x versions dropped. Unofficially Java 6 Update 7 is the last release of Java shown to work on these versions of Windows. This is believed to be due to the major changes in Update 10.
- Scripting Language Support. Generic API for tight integration with scripting languages, and built-in Mozilla JavaScript Rhino integration.
- Dramatic performance improvements for the core platform and Swing.
- Improved Web Service support through JAX-WS.
- JDBC 4.0 support.
- Java Compiler API, an API allowing a Java program to select and invoke a Java Compiler programmatically.
- Upgrade of JAXB to version 2.0: Including integration of a StAX parser.
- Support for pluggable annotations.
- Many GUI improvements, such as integration of SwingWorker in the API, table sorting and filtering, and true Swing double-buffering (eliminating the gray-area effect).
- JVM improvements include: synchronization and compiler performance optimizations, new algorithms and upgrades to existing garbage collection algorithms, and application start-up performance.
- Java Deployment Toolkit, a set of JavaScript functions to ease the deployment of applets and Java Web Start applications.
- Java Kernel, a small installer including only the most commonly used JRE classes. Other packages are downloaded when needed.
- Java Quick Starter, to improve cold start-up time.
- Improved performance of Java2D graphics primitives on Windows, using Direct3D and hardware acceleration.
- A new Swing look and feel called Nimbus based on synth.
- Next-Generation Java Plug-In: applets now run in a separate process and support many features of Web Start applications.
- The -XX:+DoEscapeAnalysis option directs the HotSpot JIT compiler to use escape analysis to determine if local objects can be allocated on the stack instead of the heap.
- Includes “tiered” compilation in the Server VM that enables it to start quickly as does the Client VM, while achieving superior peak performance. This feature is enabled by specifying -server and -XX:+TieredCompilation command options.
Find the Java 6 deprecated code @ http://download.oracle.com/javase/6/docs/api/deprecated-list.html
J2SE 5.0 (September 30, 2004)
- Codename Tiger.
- J2SE 5.0 entered its end-of-life on April 8, 2008 and is no longer supported by Sun as of November 3, 2009.
- Enhanced for loop(for each for loop).
- Enumerations: The enum keyword creates a typesafe, ordered list of values (such as Day.MONDAY, Day.TUESDAY, etc.). Previously this could only be achieved by non-typesafe constant integers or manually constructed classes (typesafe enum pattern).
- Assertions added in java 1.5
- AutoBoxing/Unboxing, automatic conversions between primitive types (such as int) and primitive wrapper classes (such as Integer).
- Generics (example: typed Collections, Set(<String>) , provides compile-time (static) type safety for collections).
- Varagrs, variable arguments. (example : for printf() function,allows variable number of different arguments).
- StringBuilder class in jdk 1.5 (java.lang package).
- Annotations, allows language constructs such as classes and methods to be tagged with additional data, which can then be processed by metadata-aware utilities.
- Static imports.
- Fix the previously broken semantics of the Java Memory Model, which defines how threads interact through memory.
- Automatic stub generation for RMI objects.
- Swing: New skinnable look and feel, called synth.
- The concurrency utilities in package java.util.concurrent.
- Scanner class for parsing data from various input streams and buffers.
- Java 5 is the last release of Java to officially support the Microsoft Windows 9x line (Windows 95, Windows 98, Windows ME) : http://www.java.com/en/download/faq/java_5_eol.xml
Unofficially, Java SE 6 Update 7(1.6.0.7) is the last version of Java to be shown working on this family of operating systems. http://java.com/en/download/help/sysreq.xml.
Find the Java 5 deprecated code @ http://download.oracle.com/javase/1.5.0/docs/api/deprecated-list.html.
J2SE 1.4 (February 6, 2002)
- Codename Merlin.
- This was the first release of the Java platform developed under the Java Community Process as JSR 59.
- Assert keyword.
- Regular expressions modeled after Perl regular expressions.
- Exception chaining allows an exception to encapsulate original lower-level exception.
- Internet Protocol version 6 (IPv6) support.
- Non-blocking NIO (New Input/Output).
- Logging API.
- Image I/O API for reading and writing images in formats like JPEG and PNG.
- Integrated XML parser and XSLT processor (JAXP).
- Integrated security and cryptography extensions (JCE, JSSE, JAAS).
- Java Web Start included.
- Preferences API (java.util.prefs)
- Codename Kestrel.
- HotSpot JVM included.
- RMI was modified to support optional compatibility with CORBA.
- JavaSound.
- Java Naming and Directory Interface (JNDI) included in core libraries (previously available as an extension).
- Java Platform Debugger Architecture (JPDA).
- Synthetic proxy classes.
J2SE 1.2 (December 8, 1998)
- Codename Playground.
- This and subsequent releases through J2SE 5.0 were rebranded as Java 2 and the version name “J2SE” (Java 2 Platform, Standard Edition) replaced JDK to distinguish the base platform from J2EE (Java 2 Platform, Enterprise Edition) and J2ME (Java 2 Platform, Micro Edition).
- strictfp keyword.
- The Swing graphical API was integrated into the core classes.
- Sun’s JVM was equipped with a JIT compiler for the first time.
- Java Plug-in.
- Java IDL, an IDL implementation for CORBA interoperability.
- Collections framework.
JDK 1.1 (February 19, 1997)
- An extensive retooling of the AWT event model
- Inner classes added to the language
- JavaBeans
- JDBC
- RMI
- Reflection which supported Introspection only, no modification at runtime was possible.
JDK 1.0 (January 23, 1996)
- Codename Oak.
- Initial release
- The first stable version was the JDK 1.0.2 is called Java 1
Comments
Post a Comment