Java SE Desktop Technologies

Many technologies, one platform

Java SE technologies provide the functionality to develop and run applications
» Get Java SE

»  Desktop Overview
 
>  Technology

 
»  Documentation
 
»  Articles
 
»  What’s New
 

Java SE Desktop Technologies


Desktop Java technologies comprise a rich set of APIs that allow you to create desktop applications. These include a comprehensive set of GUI components and services which dramatically simplify the development and deployment of commercial-quality desktop and Internet/Intranet applications.

 
Desktop Java APIs distributed with Java SE:
 
Desktop Java APIs distributed as separate, downloadable packages:
 

Technology Overviews

get Free Java JDK
 
Accessibility
Since 1973 when Section 508 of the Federal Rehabilitation Act was established, US Federal agencies have been required to purchase electronic and information technology products and services that meet the standards of Section 508. For the Java technology developer, accessibility means building the services and support into an application that enable people with disabilities to use the software. Java accessibility technologies are implemented in the Java Foundation Classes (JFC) and they comprise two separate packages: Java Accessibility API and the Java Accessibility Utilities.
Included in the Java SE platform  
 
AWT (Abstract Window Toolkit)
The Abstract Window Toolkit (AWT) supports Graphical User Interface (GUI) programming. AWT features the core foundation of the Java SE desktop libraries. It includes a robust event-handling model; graphics and imaging tools including shape, color, and font classes; layout managers for flexible window layouts; data transfer classes (including drag and drop) that allow cut and paste through the native platform clipboard. AWT also includes a basic set of user interface components, such as windows, buttons, etc. Swing is built on top of AWT, and in most cases the Swing high-level components are recommended instead of those in AWT. However, there are many APIs in AWT that are important to understand when programming in Swing.
Included in the Java SE platform  
 
Internationalization
Internationalization is the process of designing software so that it can be adapted (localized) to various languages and regions easily, cost-effectively, and in particular without engineering changes to the software. Localization is performed by simply adding locale-specific components, such as translated text, data describing locale-specific behavior, fonts, and input methods. In the Java 2 Platform, internationalization support is fully integrated into the classes and packages that provide language- or culture-dependent functionality.
Included in the Java SE platform  
 
Java 2D
The Java 2D API is a set of classes for advanced 2D graphics and imaging, encompassing line art, text, and images in a single comprehensive model. The API provides extensive support for image compositing and alpha channel images, a set of classes to provide accurate color space definition and conversion, and a rich set of display-oriented imaging operators.
Included in the Java SE platform  
 
Java 3D
Java 3D™ API provides a set of object-oriented interfaces that support a simple, high-level programming model you can use to build, render, and control the behavior of 3D objects and visual environments. With the Java 3D API, you can incorporate high-quality, scalable, platform-independent 3D graphics into applications and applets based on Java technology.
 » Download Java 3D 
Distributed through project java3d
 
Java Advanced Imaging (JAI)
The Java Advanced Imaging API provides a set of object-oriented interfaces that support a simple, high-level programming model which lets you manipulate images easily.
 » Download JAI 
  Optional Java SE API
 
JavaBeans
JavaBeans technology is the component architecture for the Java 2 Platform, Standard Edition (J2SE). JavaBeans components (beans) are reusable software programs that you can develop and assemble easily to create sophisticated applications.
Included in the Java SE platform  
 
Java Bindings for OpenGL (JOGL)
JOGL is a Java programming language binding for the OpenGL 3D graphics API. It supports integration with the Java platform's AWT and Swing widget sets while providing a minimal and easy-to-use API that handles many of the issues associated with building multithreaded OpenGL applications. JOGL provides access to the latest OpenGL routines (OpenGL 2.0 with vendor extensions) as well as platform-independent access to hardware-accelerated offscreen rendering ("pbuffers"). JOGL also provides some of the most popular features introduced by other Java bindings for OpenGL like GL4Java, LWJGL and Magician, including a composable pipeline model which can provide faster debugging for Java-based OpenGL applications than the analogous C program.
 » Download JOGL 
Distributed through project jogl
 
JavaHelp System
JavaHelp software is a full-featured, platform-independent, extensible help system that enables you to incorporate online help in applets, components, applications, operating systems, and devices. Authors can also use the JavaHelp software to deliver online documentation for the Web and corporate intranet.  
Written entirely in the Java programming language, the JavaHelp system can run on any platform and browser that supports the Java Runtime Environment (JRE), making it ideal for use in a heterogeneous environment such as the Web and corporate intranet.
 » Download JavaHelp 
  Optional Java SE API
 
Java Media Framework (JMF)
The Java Media Framework API (JMF) enables audio, video and other time-based media to be added to applications and applets built on Java technology. This optional package, which can capture, playback, stream, and transcode multiple media formats, extends the Java 2 Platform, Standard Edition (J2SE) for multimedia developers by providing a powerful toolkit to develop scalable, cross-platform technology.
 » Download JMF 
  Optional Java SE API
 
Java Plug-In
Java Plug-in technology, included as part of the Java 2 Runtime Environment, Standard Edition (JRE), establishes a connection between popular browsers and the Java platform. This connection enables applets on Web sites to be run within a browser on the desktop.
Included in the Java SE platform  
 
Java Sound
The Java Sound API specification provides low-level support for audio operations such as audio playback and capture (recording), mixing, MIDI sequencing, and MIDI synthesis in an extensible, flexible framework.  
Java Sound is Included in Java 2 Platform, Standard Edition (J2SE), version 1.3.x and higher.
Included in the Java SE platform  
 
Java Speech
With the Java Speech API you can incorporate speech technology into user interfaces for your applets and applications based on Java technology. This API specifies a cross-platform interface to support command and control recognizers, dictation systems and speech synthesizers.  
The Java Speech API was developed by Sun Microsystems, Inc. in collaboration with leading speech technology companies: Apple Computer, Inc., AT&T, Dragon Systems, Inc., IBM Corporation, Novell, Inc., Philips Speech Processing, and Texas Instruments Incorporated. Sun works with third-party speech companies to encourage the availability of multiple implementations.  
Java Web Start / JNLP
Java Web Start software provides a flexible and robust deployment solution for Java technology-based applications based on the Java Community Process program (JCP). The technology is being developed through the JCP program as JSR-56: The Java Network Launching Protocol & API (JNLP), which provides a browser-independent architecture for deploying Java 2 technology-based applications to the client desktop.
Included in the Java SE platform  
 
JDesktop Integration Components
The JDesktop Integration Components (JDIC) project aims to make Java™ technology-based applications ("Java applications") first-class citizens of current desktop platforms without sacrificing platform independence. Its mission is to enable seamless desktop/Java integration.  
JDIC provides Java applications with access to functionalities and facilities provided by the native desktop. It consists of a collection of Java packages and tools. JDIC supports a variety of features such as embedding the native browser, launching the desktop applications, creating tray icons on the desktop, registering file type associations, creating JNLP installer packages, etc. Many new features are contributed as incubator projects from the community.
 » Download JDIC 
Distributed through project jdic
 
Swing
The Swing API provides a comprehensive set of GUI (Graphical User Interface) components and services which enables the development of commercial-quality desktop and Internet/Intranet applications. Swing is built on top of many of the other Desktop Java technologies found on this page, including JavaBeans, AWT, Java2D, Accessibility, and Internationalization.  
A great place to jump into Swing programming is The Swing Tutorial
Included in the Java SE platform  
 

Back to top

Update Your Java Runtime Environment