JFrame和Frame的区别

   在AMT组件中分为两大类,这两类的基类分别是Component和MenuComponent,其中,MenuComponent是所有与菜单相关组件的父类,Component则是除菜单外其他AMT组件的父类,它表示一个能以图形化方式显示出来,并可与用户交互的对象。

   Component类通常被称为组件,根据Component的不同作用,可将其分为基本组件类和容器类。基本组件类是按钮,文本框之类的,容器类则是通过Component的子类Container实例化的对象。Container又分为Window和Pannel,Window又分为Frame和Dialog,Frame是窗体,Dialog是对话框。Panel是中间容器。

 JFrame和Frame的区别:

   1、JFrame是Frame的子类,JFrame在javax.swing包内,Frame在包java.awt中

      2、关闭窗口的方式不同:

     JFrame传递参数使得关闭按钮有效

   

import javax.swing.JFrame;
public class T2 extends JFrame{
 
 private static final long serialVersionUID = 1L;
 
 @SuppressWarnings("static-access")
 public void init(){
  
  //传递参数使得关闭按钮有效
  this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);
  
  this.setTitle("JFrame");
  this.setSize(320,240);
  this.setVisible(true);
  
 }
public static void main(String[] args){
	T2 jframe = new T2();
  jframe.init();
 }
}
  frame 加监听使得关闭按钮有效

import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class T2 extends Frame{
 
 private static final long serialVersionUID = -5650765517644858632L;
 public void init(){
  this.setSize(320,240);
  this.setTitle("Frame");
  
  //加监听使得关闭按钮有效
  this.addWindowListener(new WindowAdapter(){
@Override
   public void windowClosing(WindowEvent e){
    System.exit(0);
   }
  });
  
  this.setVisible(true);
 }
 
 public static void main(String[] args){
	 T2 frame = new T2();
  frame.init();
 }
}


你可能感兴趣的:(java)