زمان انتشار اولين نسخه جاوا (java 1.0)تا به امروز، شركت Sun تقريبا هر دو سال يكبار نسخه اي جديد از زبان برنامه سازي جاوا را منتشر مي نمايد. در اين نسخه تازه، معمولا قابليت هاي جديدي افزوده شده و ايرادهاي نسخه قبل رفع مي شوند.
نكته قابل توجه در مورد شماره گذاري نسخه هاي مختلف جاوا آن است كه تا چهارمين نسخه آن شماره گذاري بصورت Java 1.x بود كه x همان شماره نسخه مورد نظر مي باشد. از نسخه پنجم به بعد شماره گذاري بصورت Java x تغيير يافت. يعني بجاي اينكه نسخه پنجم را بصورت Java 1.5 نامگذاري كنند، بصورت java 5.0 نامگذاري كردند.
در ادامه به معرفي نسخه هاي مختلف جاوا بر اساس نسخه پايه اي آن يا همان نسخه استاندارد جاوا((Standard Edition(SE)مي پردازيم. اين نسخه شامل همه ملزومات مورد نياز جهتDesktop Programmingمي باشد.

1995 java 1.0


  • شامل 8 بسته (package) با 212 كلاس
  • مرورگرNetscape نسخه 2 تا 4 از java 1.0 پشتيباني مي كنند.
  • مايكروسافت و ساير كمپاني هاي بزرگ نرم افزاري جاوا را تاييد مي نمايند.


1997 java 1.1


  • شامل 23 بسته با 504 كلاس
  • بهبود در مديريت رويدادها(event handeling)، كلاس هاي داخلي وJVM (Java Virtual Machine)
  • مايكروسافت قابليت پشتيباني ازjava 1.1را در مرورگرIE اضافه مي كند. در اين زمان اكثر مرورگرها از جاوا پشتيباني مي كنند.
  • بستهswingبا افزايش قابل توجهي در قابليت هاي گرافيكي جاوا در اين زمان بصورت مستقل از هسته مركزي جاوا، منتشر گرديد.
  • JavaBeans
  • JDBC
  • RMI


1999 J2SE 1.2


  • نام كد:playground(به معني زمين بازي)
  • شامل 59 بسته با 1520 كلاس
  • از اين تاريخ به بعد نسخه هاي جاوا بصورتJava 2 platformناميده مي شوند.
  • تمامي كدها و ابزارهاي توليد شده تا به اين تاريخ بصورت متمركز در يك بسته نرم افزاري متمركز قرار گرفته و در واقع بصورتSoftware Development Kitبه بازار عرضه گشت.
  • ايجادJFC (Java Foundation Classes) كه بر مبناي swingپايه ريزي شده و به جهت بهبود وضعيت گرافيكي مورد استفاده قرار مي گيرد.
  • توجه: JFCاز اصولInternet Foundation Classesمحصول شركتNetscape Communicationsاستفاده مي كند. با فراهم نمودن اجزاء رابط هاي گرافيكي جهت استفاده در توليد برنامه هاي كاربردي تجاري و اينترنتي جاوا، سبب افزايش قابليت هايAWT (Abstract Window Toolkit)شده است.
  • ايجاد يكIDLجهت پياده سازيCORBA
  • افزودن مجموعه اي ازAPIها جهت پشتيباني از انواعList,Set,Hash mapsو...

2000 J2SE 1.3


  • نام كد: Kestrel(به معني نوعي باز ريز اندام اروپايي)
  • شامل 76 بسته با 1842 كلاس
  • افزايش كارايي با افزوده شدنHotspot virtual machine
  • JavaSound
  • Java platform Debugger Architecture (JPDA)
  • قرارگيريJava Naming and Directory Interface (JNDI)در كتابخانه اصلي و مركزي جاوا

2002 J2SE 1.4


  • نام كد:Merlin
  • شامل 135 بسته با 2991 كلاس
  • پشتيباني ازIPv6 (Internet Protocol version 6)
  • بهبودAPIمربوط بهI/Oبخصوص در بخش كار با تصاوير با فرمت هاي JPEGوPNG(خواندن و نوشتن)
  • JAXP(يكXMLParserمتمركز به همراه يك پردازشگرXSLT)
  • توسعه بخش امنيتي با متمركز كردن و بهبود بخش امنيت و رمزنگاري(JCE, JSSE,JAAS)

2004 J2SE 5.0


  • نام كد:Tiger(به معني ببر)
  • شامل 165 بسته با 3000 كلاس
  • بهبود ساختار جاوا در جهت افزايش سرعت آغاز به كار و كاهش ميزان فضاي مورد نياز از حافظه جهت كار(FootPoint)
  • بهبود زمان كامپايل(compile time)
  • بهبود وضعيت تبديل انواع به يكديگر(Type conversion)
  • تقويت كارايي حلقهfor، در اين نسخه ساختار حلقهForبه گونه اي توسعه يافت كه قادر بود فعاليت شمارش خود را بر روي اعضاي ساختارهايي مثل مجموعه ها و ديگر ساختار هاي سلسله مراتبي انجام دهد.

Example:
void displayWidgets(Iterable <widget> widgets){
for (widget w:widgets){
w.display();
}
}
در اين مثال، شمارش بر روي شيء قابل شمارشwidgetsانجام مي شود. با تغيير مقدار متغيرwتوسط قرارگيري هر يك از اعضاي widgetsدرون آنيكبار متدdisplay براي هر يك از اعضايwidgetsاجرا خواهد شد.

  • افزوده شدن قابليت توليد خودكارstubبرايRMI

2006 Java SE 6


  • نام كد:Mustang(به معني اسب ريز اندام وحشي بومي امريكا)
  • Sunاز اين نسخه به بعد نامJ2SEرا بهJavaSEتغيير نام داد و “.0”را از شماره نسخه هاي جديد خود حذف نمود. اما هنوز سيستم نام گذاري قديمي نسخه هاي جاوا در بين توسعه دهندگان باقي مانده است.(1.6.0)
  • از اين نسخه به بعد ديگر سيستم عامل هاي قديمي مثلwin9xياwin Meپشتيباني نمي شود. آخرين نسخه اي كه از سيستم عامل هاي گروه فوق پشتيباني مي كردj2SE 5.0 update 16بود.
  • بهبود وضعيت پشتيباني از وب سرويس ها
  • JDBC 4.0
  • ارتقاءJAXBبه نسخه 2
  • بهبود وضعيتGUIدر جاوا، مانندAPIهايSwing، قابليتsort وfilteringدرtableهاو ..
  • JavaDeploymentToolKit، يك مجموعه از توابع جاوا اسكريپتي براي راحتي بيشتر توسعه و كار باappletها
  • كوچكتر كردنKernelجاوا به منضور كم حجم تر كردن و سريع تر شدن جاوا در هنگام نصب و كم شدن مصرف حافظه . در چنين حالتي هرگاه به بسته هاي ديگري كه بر روي سيستم نصب نشده است نياز بود، كافيست آنها را دانلود كنيد.
  • بهبود كارايي گرافيك درJava2Dو استفاده ازDirect3D و HardwareAcceleration
  • آخرين UpdateموجودJavaSE 6 Update 14مي باشد.

20?? Java SE 7 (Java 7)


  • نام كد: Dolphin
  • اين نسخه در آينده نزديك به بازار عرضه خواهد شد. اين نسخه درAugust 2006شروع شده و قرار است در سال2009به بازار عرضه گردد.
  • پشتيباني از تكنيكDynamic LanguagesتوسطJVM (Multi Language Virtual Machine)
  • ايجاد يك كتابخانه جديد براي پردازش موازي روي پردازنده هاي چند هسته اي
  • و ...