Java Foundation Classes
Die Java Foundation Classes (JFC) ist eine Sammlung von APIs für die Erstellung portabler Java Graphical User Interfaces (GUIs). Die Java Foundation Classes werden durch die folgenden Features definiert: Swing GUI Komponenten, Pluggable Look-and-Feel Support, der Accessibility, Java 2D und der Internationalization.[1] Gemeinsam stellen diese die Basis für plattformunabhängige Smart Client Java GUIs, unabhängig davon, ob das darunterliegende Betriebssystem auf Windows, Sun Solaris or Linux läuft. Für alle aktuellen Betriebssysteme gibt es ebenfalls Implementierungen.
Java Foundation Classes Bestandteile
Die Java Foundation Classes werden in mehreren APIs implementiert:
- Swing GUI Komponenten & Pluggable Look-and-Feel Support - Swing
- Basis für Swing Komponenten sowie LayoutManager - Abstract Window Toolkit (AWT))
- Java2D - Java2D
- Accessibility - Accessibility API und in Swing Komponenten
- Internationalization - java.util, java.text, Input Method Framework
Differenzierung
Die Java Foundation Classes machen einen Teil der Java Desktop APIs aus und werden oft synonym mit Java Desktop verwendet. Zu den Java Desktop APIs werden aber zusätzlich zu den obengenannten APIs noch folgende gezählt:[2]
- Java Web Start/Java Network Launching Protocol (JNLP) - Deployment von Java Applikationen über Browser
- Java PlugIn - Plugin von Java für Brwoser
- Java 3D
- Java Sound
- Java Bindings for OpenGL (JOGL)
- Java Advanced Imaging (JAI)
- JavaBeans
- JavaHelp System
- JDesktop Integration Components (JDIC)
Die Java Foundation Classes (und auch die Java Desktop APIs) überschneiden sich mit den Java Media APIs. Diese enthalten folgende Teile:[3]
- Java 2D
- Java 3D
- Java Advanced Imaging API (JAI)
- Java Binding for OpenGL (JOGL)
- Java Image I/O API
- Java Media Framework (JMF)
History
AWT was heavily criticized for being little more than a wrapper around the native graphical capabilities of the host platform. That meant that the standard widgets in the AWT relied on those capabilities of the native widgets, requiring the developer to also be aware of the differences between host platforms.
An alternative graphics library called the Internet Foundation Classes was developed in more platform-independent code by Netscape.
At the same time, another graphics library, called Application Foundation Classes (AFC), was developed independently by Microsoft. It was made to be easier to extend the graphic components, but was primarily aimed for use with the Microsoft Java Virtual Machine.
Ultimately, Sun merged the IFC with other technologies under the name "Swing", adding the capability for a pluggable look and feel of the widgets. This allowed Swing programs to maintain a platform-independent code base, but mimic the look of a native application. The release of JFC made IFC obsolete, and dropped interest for Microsoft's AFC.
See also
External links
Einzelnachweise
- ↑ About the JFC and Swing - Definition der Java Foundation Classes
- ↑ Java SE Desktop Overview
- ↑ Java Media APIs