一、Swing是建立在AWT之上的(参见1.2节“轻量组件与重量组件的比较”中对轻量组件与重量组件比较的讨论)、包括大多数轻量组件的组件集。除提供了AWT所缺少的、大量的附加组件外,Swing还提供了替代AWT重量组件的轻量组件。Swing还包括了一个使人印象深刻的、用于实现包含插入式界面样式等特性的图形用户界面的下层构件。因此,在不同的平台上,Swing组件都能保持组件的界面样式特性,如双缓冲、调试图形和文本编辑包等。
在java里用来设计GUI组件和容器有两种,一种是早期版本的AWT组件,在java.awt包里,这些组件都是Component类的子类,另一种是较新的Swing组件,在javax.swing包里,这些组件都是Jcomponent类的子类。
二、Jframe与Frame的功能相当,但两者在使用上还有很大的差别的。不可以直接在Jframe上增加子部件和设置布局管理器,而必须先调用Jframe.getContentPane()方法Jframe中自带的JrootPane对象,JrootPane是Jframe唯一的子组件,只能在这个JrootPane对象上增加子组件和设置布局管理器。