Java Foundation Classes
The Java Foundation Classes (JFC ) is a collection of application programming interfaces ( APIs) for creating portable Java Graphical User Interfaces ( GUIs). The Java Foundation Classes are defined by the following features: Swing GUI components, pluggable look-and -feel support, the Accessibility, Java 2D, and Internationalization. Together, these the basis for platform-independent Java Smart Client GUIs, regardless of whether the underlying operating system to Windows, Sun Solaris or Linux. For the most current operating systems, there are also implementations.
Components
- Swing GUI Components & Pluggable Look-and -Feel Support - Swing
- Basis for Swing components, and layout managers - Abstract Window Toolkit ( AWT)
- Representation and modification of 2-dimensional objects - Java 2D
- Accessibility - Java Accessibility API ( JAAPI ) and special enhancements in Swing Components
- Internationalization - java.util, java.text, Input Method Framework
Differentiation
The Java Foundation Classes constitute a part of the Java desktop APIs and are often used interchangeably with Java Desktop. But part of the Java Desktop APIs following in addition to the above APIs counted:
- Java Web Start / Java Network Launching Protocol ( JNLP ) - Deploying Java applications via browser
- Java plug-in - Java plugin for browsers
- Java 3D - 3D for Java applications
- Java sound
- Java Bindings for OpenGL ( JOGL )
- Java Advanced Imaging ( JAI)
- JavaBeans
- JavaHelp system - Integration of online help in Java applications
- JDesktop Integration Components ( JDIC )
The Java Foundation Classes (and the Java desktop APIs) overlap with the Java Media APIs. This includes the following parts:
- Java 2D
- Java 3D
- Java Advanced Imaging ( JAI)
- Java Bindings for OpenGL ( JOGL )
- Java Image I / O API
- Java Media Framework (JMF )
History
AWT, the time to make only way to user interfaces, has been heavily criticized in the first years of the existence of Java. It is little more than a wrapper around the native graphics capabilities of the platforms that support Java. There was thus no more than the particular platform offered and made it necessary that the developers were received on the differences between the platforms.
Alternative graphics libraries such as the Internet Foundation Classes ( IFC) of Netscape or the Application Foundation Classes ( AFC ) from Microsoft have been developed.
Finally, Sun and Netscape announced on 2 April 1997, the Internet Foundation Classes, joined with other technologies and expanded to include the ability of Pluggable Look-and- Feels bring out under the name " Java Foundation Classes ". Swing was first delivered in late 1997 with the JDK 1.1.5 as an external library, the Java Foundation Classes are since JDK 1.2 ( "Java 2") end of 1998, an integral part of the Java runtime environment.
The release of the Java Foundation Classes made other approaches for representing Java GUIs, hence the Internet Foundation Classes and the Application Foundation Classes obsolete.