JFC主要由AWTAbstractWindowToolkit(AWT)、Swing和Java2D組成。如果這三個工具配合使用,那麽用Java編程語言編寫和開發的用戶界面,無論是否轉移到不同的操作平臺如MicrosoftWindowsWindows、MacOSX或Linux上,都可以保持壹致的圖像呈現。
AWT是壹個老的雙接口函數庫,仍然高度依賴各個操作平臺的繪圖功能,用比Wrapper更小的設計去去除和吸收操作平臺間繪圖功能的差異,使得跨平臺移植後的Java程序的繪圖呈現不夠壹致,這讓AWT飽受詬病。這意味著AWT的widget依賴於操作平臺原有的widget功能,程序員在開發和編寫時必須了解操作平臺之間widget的差異,這背離了Java編程語言的初衷:跨平臺壹致性。