在利用java设计界面的时候一直有一个疑惑就是java.awt.*这个包下的组件和javax.swing.*这个包下的组件有什么区别,找了半天又发现一个JFC这样的名词,反复查了M个小时略析如下。
JFC
JFC(全称为“Java Foundation Classes”,中文译为“爪哇基础类别”)是一个图形框架(Graphical Framework),依据此框架可建构出具有移携性(Portable)的Java式GUI图形式使用者介面。
JFC主要是由AWTAbstract Window Toolkit(AWT)、Swing以及Java 2D三者所构成,若将这些一同搭配运用,则用Java程式语言撰写开发成的使用者介面,无论移转、转移到Microsoft WindowsWindows、Mac OS X或Linux等各种不同的作业平台上,都能保有一致性的图像呈现。
简单来说可以把JFC看做是一个应用程序开发平台,是用来构建应用程序的基础类,包括了界面生成的各类组件,还有各类组件的监听器,其主要的优点是跨平台,原理是通过包里面的函数直接调用相应的系统的API。
AWT
AWT(Abstract Window Tookit)是SUN公司较早推出的用于构建与平台无关的UI的库函数,但是由于很多相应的应用程序界面无法构成,所以后来SUN公司又推出了功能更加强大的SWING组件。
Swing
Swing组件用于开发Java应用程序用户界面的开发工具包。它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。