7

Possible Duplicate:
What is the difference between swing and awt?

I often see that JFrame is used a lots. But sometimes, I also see that programmer use Frame in their example. So could you tell me the advantages/disadvantages of them?

Community
  • 1
  • 1
MasterDark116
  • 88
  • 1
  • 1
  • 4
  • 9
    A Frame is an AWT component whereas a JFrame is a Swing component. [Difference between AWT and Swing](http://stackoverflow.com/questions/408820/what-is-the-difference-between-swing-and-awt). – assylias Aug 27 '12 at 15:46
  • yep, a possible duplicate, you might wanna look at the answers of the question that mre posted. – Phani Rahul Aug 27 '12 at 15:51
  • 1
    @mre: These 2 questions are not duplicates. – Wug Aug 27 '12 at 16:46

2 Answers2

20

Well let me break it up for you.............. Before jumping into Frame Vs JFrame, let me explain you about AWT and Swing.

AWT :

- It has a Platform Dependent Look and Feel.

- So it uses the Native GUI components.

- As AWT uses the peer components, its called as Heavy Weight Component.

Swing :

- It has a Platform Independent Look and Feel.

- And its because it uses the Pure Java Components.

- As Swing uses pure java components, its know as Light Weight Component.

Its was said that AWT is faster than Swing as it uses the Platform component, but due the arrival of faster processor, etc .... Its equivalent now..and you get lots of flexibility.

Here is the GUI Tree :

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

  |                 |
JComponent        Window
  |                 |
JPanel            Frame
                    |
                  JFrame

Now Frame is an AWT component, where as JFrame is a Swing component.

You can also that see JFrame extends Frame.

But JFrame, provides lots of functinality and flexibility as compared to Frame, we can even say this that Swing provides better functionality with ease of implementing them.

Kumar Vivek Mitra
  • 33,294
  • 6
  • 48
  • 75
5

A frame is an AWT component(well this is the older classes for java GUI development) which uses native OS GUI support

A JFrame is a Swing component which is the newer one, well today's java GUI development uses mostly Swing as an advantage you can have a lot of community support on it. as far as I know Swing has LookAndFeel Feature that you can configure to change the look of your GUI with just few line of codes.

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

Netorica
  • 18,523
  • 17
  • 73
  • 108