GUI即图形用户界面,就是应用程序提供给用户操作的图形界面,包括窗口、菜单、按钮、工具栏和其他屏幕元素。在Java里有两个包为GUI设计提供了丰富的功能,他们是AWT和Swing,AWT是Java的早期版本,其中的AWT组件种类有限,可以提供基本的GUI设计工具,却无法完全实现目前GUI设计所需要的所有功能。Swing是SUN公司对早期版本的改进版本,它不仅包括AWT中具有的所有部件,并且提供了更加丰富的部件和功能,它足以完全实现GUI设计所需的一切功能。
在AWT中定义了很多接口和类,用于在Java应用程序和Java applet中进行GUI设计。图形界面程序中可以使用各种各样的图形界面元素,如文本框、按钮、列表框、对话框等,我们将这些图形界面元素称为GUI组件。AWT为各种GUI组件提供了对应的Java组件类,这些类都是java.awt.Component的直接或间接子类。Frame类用于产生一个具有标题栏的框架窗口。Frame.setSize方法可以设置窗口的大小。Frame.setVisible显示或隐藏窗口。
对于众多的GUI组件,根据其作用又可以分为两大类:基本组件(组件)和容器。组件又称为构件,在这些组件上不能容纳其他的组件。容器其实也是一种组件,是一种比较特殊的组件,它可以用来容纳其他的组件,所有的容器都是java.awt.Container的直接或间接子类。