一.定義
swing是一個(gè)用戶界面庫(kù),由抽象窗口工具箱(AWT)的構(gòu)架上發(fā)展而來(lái)。
二.基礎(chǔ)構(gòu)造塊
JComponent,他是所有組件的父類,為所有組件提供繪制的基礎(chǔ)構(gòu)架。

GUI編程常提到知識(shí)點(diǎn)
1.java把component類的子類或間接子類創(chuàng)建的對(duì)象稱為一個(gè)組件
2.java把container的子類或間接子類創(chuàng)建的對(duì)象稱為一個(gè)容器
3.可向容器中添加組件。container類提供了一個(gè)public方法-add(),一個(gè)容器可以調(diào)用這個(gè)方法將組件添加到該容器中
4.容器調(diào)用removeAll()方法可以移掉容器中的全部組件,調(diào)用remove(Component c)方法可以移掉容器中參數(shù)c指定的組件
5.容器本身也是一個(gè)組件,因此可以把一個(gè)容器添加到另一個(gè)容器中,實(shí)現(xiàn)容器的嵌套
6.每當(dāng)容器添加新的組件或移掉組件時(shí),應(yīng)當(dāng)讓容器調(diào)用validate()方法,以保證容器中的組件能正確地顯示出來(lái)
三.操作
1.創(chuàng)建新的項(xiàng)目(略)
2.添加容器——JFrame
(1)JFrame定義:JFrame是一個(gè)容器(窗體),用來(lái)承載需要添加的組件
(2)JFrame常用方法:

(3)示例
基礎(chǔ)窗體
package swingTest;
import javax.swing.*;
public class SwingTest extends JFrame{
/**
*
*/
private static final long serialVersionUID = 1L;
//需繼承JFrame類以使創(chuàng)建的對(duì)象具有窗體的屬性和方法
public static void main(String[] args) {
// TODO Auto-generated method stub
//創(chuàng)建窗體對(duì)象
SwingTest SW = new SwingTest();
//設(shè)置窗體可見(jiàn)
SW.setVisible(true);
}
public SwingTest() {
//定義構(gòu)造方法
//設(shè)置窗體的大小
this.setSize(600, 480);
this.getContentPane().setLayout(null);
//設(shè)置窗體標(biāo)題
this.setTitle("SwingTest");
}
}
注意:需要繼承JFrame類
運(yùn)行結(jié)果:

拓展
控件詳情參考方法API:https://docs.oracle.com/javase/8/docs/api/
常用控件:
①JLabel——標(biāo)簽:描述文本和圖片
常用方法:

用法:
聲明控件對(duì)象->編寫(xiě)getJLabel()方法,返回一個(gè)JLabel示例
②JTextFiled——文本框
常用方法:
setBounds(int x, int y, int width, int height)——設(shè)置位置和尺寸
setText(String str)——設(shè)置要顯示的字符
③JButton——按鈕
常用方法:
setBounds(int x, int y, int width, int height)——設(shè)置位置和尺寸
setText(String str)——設(shè)置要顯示的字符
addActionListener(參數(shù))——添加事件監(jiān)聽(tīng)