7

可能重复:
swing 和 awt 有什么区别?

我经常看到 JFrame 被大量使用。但有时,我也看到程序员在他们的例子中使用 Frame。那么你能告诉我它们的优点/缺点吗?

4

2 回答 2

19

好吧,让我为您分解一下....... 在进入 Frame 与 JFrame 之前,让我向您解释一下 AWT 和 Swing。

AWT:

-它具有平台相关性 Look and Feel

-所以它使用本机 GUI组件。

-由于 AWT 使用对等组件,因此称为重量级组件

摇摆 :

-它具有独立于平台 Look and Feel的功能。

-因为它使用纯 Java组件。

-由于 Swing 使用纯 java 组件,它被称为轻量级组件

据说 AWT 比 Swing 更快,因为它使用了 Platform 组件,但是由于更快的处理器等的到来……它现在等价了……你得到了很大的灵活性。

这是 GUI 树:

        Object
           |
        Component
           |
        Container
  ---------|---------

  |                 |
JComponent        Window
  |                 |
JPanel            Frame
                    |
                  JFrame

现在Frame是一个AWT component,而JFrame是一个Swing component.

您还可以看到 JFrame 扩展了 Frame。

但是 JFrame 与 Frame 相比提供了很多功能性和灵活性,我们甚至可以说 Swing 提供了更好的功能并且易于实现。

于 2012-08-27T16:07:17.853 回答
5

框架是一个 AWT 组件(这是用于 Java GUI 开发的旧类),它使用本机 OS GUI 支持

JFrame 是一个 Swing 组件,它是较新的组件,今天的 java GUI 开发主要使用 Swing 作为一个优势,您可以获得很多社区支持。据我所知,Swing 具有 LookAndFeel 功能,您只需几行代码即可对其进行配置以更改 GUI 的外观。

http://docs.oracle.com/javase/tutorial/uiswing/lookandfeel/

于 2012-08-27T15:51:17.417 回答