|
JDK 1.0 (January 23, 1996)
·
Initial release
JDK 1.1 (February 19, 1997)
·
Retooling of the AWT event
model
·
Inner classes added to the
language
·
JavaBeans
·
JDBC
·
RMI
J2SE 1.2 (December 8, 1998)
This and subsequent releases
through J2SE 5.0 were rebranded retrospectively Java 2 & 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
·
Reflection
·
Swing api integration into
the core classes
·
JVM equipped with a jit
compiler
·
Java plug-in
·
Java IDL
·
An IDL implementation for
corba interoperability
·
Collections Framework
Basic Features
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
Java Foundation Classes (JFC)
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
Enterprise Features
|
|
|
docs
|
|
|
docs
|
|
|
docs
|
Tool Support
|
|
|
docs
|
|
|
|
J2SE 1.3 (may 8, 2000)
·
Hotspot jvm included
·
JavaSound
·
JNDI included in core
libraries
·
Java platform debugger
architecture (jpda)
·
RMI was modified to
support optional compatibility with corba
J2SE 1.4 (february 6, 2002)
·
assert keyword
·
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
J2SE 5.0 (september 30, 2004)
tiger [originally numbered 1.5]
·
Generics: provides
compile-time (static) type safety for collections and eliminates the need for
most typecasts (type conversion). ( example: typed Collections, Set(<String>))
·
Metadata: also called
annotations; allows language constructs such as classes and methods to be
tagged with additional data, which can then be processed by metadata-aware
utilities.
·
Autoboxing/unboxing:
automatic conversions between primitive types (such as int) and primitive
wrapper classes (such as integer).
·
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).
·
Swing: new skinnable look
and feel, called synth.
·
Var args: the last
parameter of a method can now be declared using a type name followed by three
dots (e.g. Void drawtext(string... Lines)). In the calling code any number of
parameters of that type can be used and they are then placed in an array to
be passed to the method, or alternatively the calling code can pass an array
of that type. Another example: printf() function, allows variable number of different arguments.
·
Enhanced for each loop:
the for loop syntax is extended with special syntax for iterating over each
member of either an array or any iterable, such as the standard collection
classesfix the previously broken semantics of the java memory model, which
defines how threads interact through memory.
·
Automatic stub generation
for rmi objects.
·
Static imports concurrency
utilities in package java.util.concurrent.
·
Scanner class for parsing
data from various input streams and buffers.
·
Assertions
·
StringBuilder class (in
java.lang package)
·
Annotations
Links:
Java SE 6 (december 11, 2006)
mustang sun replaced the name "J2SE" with java se and dropped the
".0" from the version number. Beta versions were released in
february and june 2006, leading up to a final release that occurred on
december 11, 2006. The current revision is update 20.
·
Support for older win9x
versions dropped.
·
Scripting lang support:
Generic API for integration with scripting languages, & 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).
Java se 6 update 10 A major enhancement in terms of end-user
usability.
·
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. Enhanced
updater.
·
Enhanced versioning and
pack200 support: server-side support is no longer required.
·
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 and based on synth.
·
Next-generation java
plug-in: applets now run in a separate process and support many features of
web start applications.
Java se 6 update 12 This
release includes the highly anticipated 64-bit java plug-in (for 64-bit
browsers only), windows server 2008 support, and performance improvements of
java and JAVAFX applications.
Features and Enhancements JDK
Documentation
Java Platform, Standard Edition 6 is a major feature release. The following
list highlights many of the significant features and enhancements in Java SE
6 since the prior major release, J2SE 5.0. It is followed by a detailed table
with links to related bugs, enhancements, and JSRs.
Note, this web page relates to the Release Candidate milestone for Java SE 6.
Its related Umbrella JSR 270 does not itself define specific features. Instead
it enumerates features defined in other JSRs or through the concurrent
maintenance review of the Java SE platform specification. The final release
is expected to include all JSR 270 features, although it is possible for an
approved feature to be dropped.
Refer also to:
Java Platform, Standard Edition Differences between 5.0 fcs and 6 Beta .
Highlights of Technology Changes in
Java SE 6
Choose a technology for links to further information.
Collections Framework
Deployment (Java Web Start and Java Plug-in)
Drag and Drop
Instrumentation
Internationalization Support
I/O Support
JAR (Java Archive Files) - An annotated list of changes between the 5.0 and
6.0 releases to APIs, the jar command, and the jar/zip implementation.
Java Web Start
Java DB 10.2 JDBC4 Early Access
The $JAVA_HOME/db subdirectory contains class libraries for Java DB, Sun
Microsystems's distribution of the Apache Derby database technology.
For information on Java DB, see Java DB.
For information on Derby, see: Apache Derby.
For documentation on this version of Java DB, see Java DB - Reference.
For a description of the capabilities of this version of Java DB, see the
release notes in the $JAVA_HOME/db subdirectory.
This Early Access version of Java DB is built from Apache Derby 10.2.1.7
source code (revision 453926) using JDK 6 JDBC 4 APIs to build JDBC 4 driver
code.
Comments regarding this version of Java DB can be sent to javadb-ea@sun.com.
DISCLAIMER: THIS IS EARLY ACCESS SOFTWARE AND COMES WITH NO WARRANTIES OR
SUPPORT. IT IS PROVIDED "AS IS". IT IS NOT FOR PRODUCTION USE.
JMX (Java Management Extensions) - A list of JMX API changes between the J2SE
5.0 and Java SE 6 releases.
JPDA (Java Platform Debugger Architecture)
JVM TI (Java Virtual Machine Tool Interface)
lang and util Packages
Monitoring and Management for the Java Platform
JConsole is Officially Supported in Java SE 6
Networking Features
Performance
Reflection
RMI (Remote Method Invocation)
Scripting
Security
Serialization of Objects
Swing
VM (Java Virtual Machine)
Detailed Table of Technology Changes
in Java SE 6
Items are ordered by area/component. The first column indicates the scope of
a change:
jsr – A larger feature or feature set having its own Java Specification
Request
api – A smaller feature that adds new Java APIs (application programming
interfaces)
imp – An implementation enhancement that does not involve new APIs, for
example, a performance improvement
| SCOPE | AREA /
COMPONENT | SYNOPSIS | RFE |
| api | client/2d | ImageIO: GIF writer | 4339415 |
| imp | client/2d | Native Text Rendering Parity | 4726365 |
| imp | client/2d | Improved hardware acceleration on Windows | 5104393 |
| imp | client/2d | Single-threaded rendering for OpenGL pipelines | 6219284 |
| api | client/awt | Pop-up splash screen at beginning of Java startup | 4247839 |
| api | client/awt | Java applications can access desktop applications | 6255196 |
| api | client/awt | Improved modal dialogs | 4080029 |
| imp | client/awt | XAWT is the default Toolkit on Solaris | 5049146 |
| api | client/awt | Windows system-tray support | 4310333 |
| imp | client/awt | Better support for input in non-English locales | 4360364 |
| imp | client/awt | Live resizing | 6199167 |
| imp | client/deploy | Improved application deployment across browsers | 6329487 |
| api | client/deploy | Allow JAR files to be shared across installed JREs | 6271065 |
| imp | client/deploy | Improved user experience in JRE/JDK installer | 5079209 |
| imp | client/deploy | Improved security | 6222485 |
| imp | client/deploy | Direct execution of JAR files on Linux | 6211008 |
| imp | client/deploy | Improved desktop integration in Java Web Start | 4625362 |
| imp | client/deploy | Improved IFTW installer | 6198632 |
| imp | client/deploy | Improved startup & footprint for plugin/webstart | 6329480 |
| imp | client/deploy | Mozilla Firefox browser support | 6216340 |
| imp | client/deploy | Default Java on Linux | 6211006 |
| imp | client/deploy | Improved user experience in Java Plug-in and Java Web Start | 6205064 |
| imp | client/deploy | Unified download engine | 4802551 |
| imp | client/deploy | Support Mozilla and Firefox family browsers. | 6216340 |
| api | client/dnd | A way to avoid hangs on retrieval of clipboard data | 4818143 |
| imp | client/i18n | Support for important locales | 4324505 |
| imp | client/i18n | Japanese calendar | 4609228 |
| api | client/i18n | Resource bundle enhancements | 5102289 |
| api | client/i18n | Normalizer API | 4221795 |
| api | client/i18n | Pluggable locales: Pluggability for break iterators | 4052440 |
| api | client/i18n | Pluggable locales: Pluggability for locale names, formatters, and collators | 4052440 |
| imp | client/l10n | Chinese localization for JDK tools | 6209342 |
| imp | client/swing | GTK Native L&F Fidelity | 6185456 |
| imp | client/swing | Through-the-stack: Reduced footprint / startup time | 6329480 |
| imp | client/swing | Native look & feel fidelity | |
| imp | client/swing | Avalon Look-and-Feel | 6329475 |
| api | client/swing | JTable sorting, filtering, and highlighting | 4747079 |
| api | client/swing | JTabbedPane: Tabs as Components | 4499556 |
| imp | client/swing | Windows native L&F fidelity | 5106661 |
| api | client/swing | SwingWorker | 4681682 |
| api | client/swing | Improve Drag & Drop features for Swing Components | 4468566 |
| api | client/swing | Extend SpringLayout | 4726194 |
| api | client/swing | Text Document Printing | 4791649 |
| imp | client/swing | Improved Painting Performance (fix grey boxes) | 4967886 |
| jsr | core/core | JSR 223: Scripting for the Java Platform | 6249843 |
| api | core/debug | Multiple Simultaneous Agents | 4772582 |
| api | core/debug | Added Heap Capabilities to JPDA | 4914266 |
| api | core/debug | Attach-on-demand | 6173612 |
| api | core/debug | JVMPI and JVMDI have been removed. | 4914266 |
| api | core/jndi | Read-timeout specification for LDAP operations | 6176036 |
| api | core/libs | Array Reallocation API | 4655503 |
| imp | core/libs | BigDecimal optimizations for specjbb++ | |
| api | core/libs | Floating point: Add IEEE 754 recommended functions to java.lang.{{,Strict}Math} | 4406429 |
| api | core/libs | Standard service-provider API (java.util.Service) | 4640520 |
| api | core/libs | Collections and Concurrency Updates | 6268386 |
| api | core/libs | IO Enhancement: Password Prompting | 4050435 |
| api | core/libs | IO Enhancement: File Attributes | 6216563 |
| api | core/libs | IO Enhancement: Method for Discovering Free Disk Space | 4057701 |
| imp | core/libs | IO Enhancement: Long pathnames on Windows | 4403166 |
| api | core/libs | Low-level Java compiler API for IDEs | 4813736 |
| jsr | core/libs | JSR 202: Java Class File Specification Update | 4639391 |
| jsr | core/libs | JSR 199: Java compiler API | 4164450 |
| imp | core/libs | Improved perceived footprint | 6280693 |
| api | core/libs | Deques | 6192552 |
| api | core/libs | Navigable Maps and Sets | 4155650 |
| imp | core/libs | BitSet Updates | 4963875, 4979017, 4979028,4979031, 5030267, 6222207,6404711 |
| imp | core/libs | Performance Improvements when compiling using network file systems | 4770745 |
| imp | core/m&m | Improved diagnosability of OutOfMemoryError | 6173515 |
| api | core/m&m | Generic annotations for MBean descriptor contents | 6221321 |
| api | core/m&m | Support for java.util.concurrent locks in the lock related facility | 5086470 |
| imp | core/m&m | jconsole is more user-friendly | 6174397 |
| api | core/m&m | Small-scale improvements to JMX Monitor API | 6222961 |
| api | core/m&m | descriptors added to all types of MBean | 6204469 |
| api | core/m&m | MXBeans added to JMX | 6175517 |
| api | core/net | Light-weight HTTP server | 6270015 |
| api | core/net | Internationalized resource identifiers | 5085902 |
| api | core/net | Default CookieManager implementation | 6244040 |
| imp | core/net | SPNEGO HTTP authentication | 6260531 |
| api | core/net | International domain names | 4737170 |
| api | core/net | Programmatic access to network parameters | 4691932 |
| imp | core/sec | Native platform GSS integration | 6202035, 6345202 |
| imp | core/sec | SPNEGO in Java GSS | 6239635 |
| imp | core/sec | MS CAPI Keystore provider | 6318171 |
| imp | core/sec | Better support for NSS keystore | 6273877 |
| imp | core/sec | Improved Policy performance | 5037004 |
| imp | core/sec | JSR 268: Java Smart Card I/O API | 6239117 |
| jsr | core/sec | JSR 105: XML DSig | 4635230 |
| api | core/sec | Enhance certificate APIs | 4635060 |
| jsr | core/tools | JSR 269: Standard pluggabilty API for annotation processors (APT) | 6222574 |
| imp | core/tools | javac: Support for split verification | 6227862, 6227862, 5110170,5110184, 6217263 |
| imp | core/tools | javac: Implement JSR 175'sjava.lang.SuppressWarnings | 4986256 |
| imp | core/tools | Class-path wildcards | 6268383 |
| jsr | ee/ee | JSR 250: Common annotations | 6304697 |
| imp | ee/jdbc | Extended JDBC-ODBC bridge to enable JDBC 4.0 EoD features | 6290312 |
| jsr | ee/jdbc | JSR 221: JDBC 4.0 | 6290312 |
| imp | ee/xml | JAXP 1.4
JSR 206: Java API for XML Processing
| 6317994 |
| jsr | ee/xml | Support for the Web Services stack
JSR 222: JAXB 2.0
JSR 224: JAX-RPC 2.0
JSR 173: STAX
JSR 181: Web Services Metadata
| 6245626 |
| api | ee/xml | JavaBeans Activation Framework (JAF) | 6254474 |
| imp | vm/compilers | Improved performance of compiled code | 5079711, 6206844, 6239807,4850474,
5003419, 5004907, 5101346,6190413, 6191063,
6196383, 6196722, 6211497,6232485, 6233627, 6245809,
6251002, 6262235, |
| imp | vm/c1 | Linear scan register allocator for C1 | 6320351 |
| imp | vm/c2 | Improved loop optimization | 5073662, 5074608, 5091921,6260293 |
| imp | vm/c2 | Escape analysis | 6339956 |
| imp | vm/c2 | Lock coarsening | 6245809 |
| imp | vm/gc | CMS: Parallelize concurrent marking | |
| imp | vm/gc | Parallel compaction | |
| imp | vm/runtime | Improve uncontended synchronization performance | |
| imp | vm/runtime | Improved performance of contended synchronization operations | |
| imp | vm/runtime | Faster format checker/class-file parser | |
| imp | vm/runtime | Improved startup time | 6179212 |
| imp | vm/runtime | Improved runtime performance | |
| imp | vm/runtime | Improved JNI performance | 5086424 |
| imp | vm/runtime | Class circularity detection | 4699981 |
| imp | vm/runtime | DTrace support in the VM | |
On Printing Thats something not out of box in Java Refer to this:
http://code.google.com/p/ups-php/
http://code.google.com/p/zxing/
http://www.google.com/chrome/intl/en/p/cloudprint.html
http://code.google.com/p/escprinter/
http://code.google.com/p/jzebra/
|