Java Swings/Java Swing

Java Swing is a library/toolkit released by Oracle as a part of Java language which enables Java programmers to create GUIs and rich client applications.

Success Stories
There are many applications written in Java, and a new one pops up every day. Here are some examples:

NetBeans


NetBeans is a Integrated Development Environment (IDE) written completely using Java. Because of Java's portability, it can run on any platform, as long as Java is installed. Initially it was only a Java IDE, but now it supports many languages like C, C++, Python, and PHP, to name a few.

JFC
Swing is a part of Java Foundation classes (JFC). JFC consists of the following modules



Swing GUI Components
Java Swing Components are components for the Graphical User Interfaces of Applications. Some examples of Swing GUI components are lists, combo-boxes, labels, text areas, editor panes, buttons, menus, etc. Many components have built-in features such as print, drag & drop, sort, open file, save file, etc.

Pluggable Look-and-Feel (PLAF) Support
The Look and Feel module defines how all of the components in the application look. Each Java Swing Application has an entirely separate L&F from the rest of the applications on the computer, including other Java Applications. Some examples of L&Fs are: Nimbus (really new), Metal, Aqua(Macs only), Windows Aero & Windows Classic (Windows only), and Motif(Highly customizable by the User of the Application). There are also many third-party Look and Feels available.

Accessibility API
Not all humans are perfect. There is a good chance that a disabled person might not be able to use your program/application, so your program must be accessible to him or her. Java Foundation Classes Accessibility API enables you to create programs that are accessible to disabled people by providing them with screen readers, braille displays, etc., so that they can get information from the User Interface.

Java 2D API
The Java 2D API provides a rich set of graphics classes and utilities for drawing 2D graphics. It can even generate output for printers.

Internationalization
English is not the only language on this planet. Many people don't know any other language than their native tongue. Hence, when a programmer writes an application he/she must consider how to release it in as many languages as possible. Java i18n (there are 18 letter's between 'i' and 'n' in Internationalization) helps programmers develop applications in various different languages, so that you can target a global audience.

Reference
http://docs.oracle.com/javase/tutorial/uiswing/start/about.html