Java Foundation Classes
Java Foundation Classes (JFC) は ポータブルなJavaベースのGUIを構築するためのグラフィカルフレームワークである。JFCはAbstract Window Toolkit (AWT)、Swing、Java 2Dから成る。共にそれらは、基礎を成し、ユーザインタフェースシステムがWindowsであろうとmacOSであろうとLinuxであろうと、Javaプログラムに一貫したユーザインタフェースを提供する。
AWTは他の2つのインタフェースライブラリよりも古く、ホストプラットフォームのネイティブなグラフィクス機能をもとにした単なるラッパーに過ぎないことで厳しく批評された。それはAWTの標準ウィジェットがこれらのネイティブウィジェットの能力に頼っており、ホストプラットフォーム間の違いも意識することをデベロッパーに要求していることを意味した。
Internet Foundation Classesと呼ばれる代替グラフィックライブラリはネットスケープ社によりプラットフォーム非依存コードになるよう開発された。最終的に、サン・マイクロシステムズ社はウィジェットのLook and feel置換機能を加えた"Swing"に他の技術とIFCを併合した。これにより Swingプログラムはコードとしてはプラットフォーム非依存になり、同時にネイティブアプリケーションの外観を擬似的に再現できるようになった。