App下載

初步了解Java圖形界面開發(fā)Swing類

猿友 2021-07-21 17:01:48 瀏覽數(shù) (3430)
反饋

本篇文章,我將和大家分享一下Java中新一代的圖形界面開發(fā)工具 Swing 類庫(kù)的簡(jiǎn)要概述,基本結(jié)構(gòu)和常用的包,希望對(duì)大家的學(xué)習(xí)有所幫助。下面是詳情內(nèi)容。

Swing類庫(kù)概述

我們所見的,無(wú)論是瀏覽器,還是軟件使用,它們都需要有一個(gè)圖形界面,這才方便用戶進(jìn)行交互使用。在 Java 中有專門用來(lái)開發(fā)圖形界面的工具,比如AWT、Swing。

Swing作為新一代的圖形界面開發(fā)工具,用來(lái)開發(fā)界面比AWT更加優(yōu)秀。因?yàn)镾wing是一種輕量級(jí)組件,采用的是純 Java 開發(fā),所以繼承了 Java 語(yǔ)言的跨平臺(tái)性,不再限制于本地平臺(tái)的圖形界面,可以在更多平臺(tái)上保持同樣的運(yùn)行效果。除此之外,Swing 比 AWT 提供了更多的圖形界面組件,可以用來(lái)開發(fā)出更美觀更優(yōu)秀的圖形界面程序。

Swing類庫(kù)結(jié)構(gòu)

Swing 組件采用的是 MVC 的設(shè)計(jì)方式,因此實(shí)現(xiàn)了 GUI 組件的顯示邏輯和數(shù)據(jù)邏輯分離,也就允許了程序員可以自定義 Render 來(lái)改變 GUI 組件的顯示外觀,從而提供了更多靈活性。

Swing 主要是圍繞 JComponent 組件構(gòu)建的,而 JComponent 是由 AWT 的容器擴(kuò)展而來(lái)的。所以,Swing 的組織結(jié)構(gòu)如下圖所示:

5-200ZQ64244445

由圖中不難看出,Swing 組件除了 AbstractButton 類之外都是 J 開頭的。所以Swing 容器組件除了直接繼承了 AWT 類庫(kù)中的容器組件類,其他大部分組件都是繼承 JComponent 組件。

這些組件又可以分成兩類,容器組件和非容器組件。容器組件包括了JFmme和JDialog兩個(gè)組件,非容器組件有JButton、JMenu和JPanel等等。

Swing類庫(kù)的包

Swing 類庫(kù)是由許多個(gè)包組成的,正是有了這些包中的類互相協(xié)作來(lái)完成 GUI 設(shè)計(jì)。

Swing類庫(kù)包

在這其中,javax.swing 包是 Swing 類庫(kù)提供的最大的包,其中包含了將近了 100 個(gè)類和 25 個(gè)接口??梢哉f(shuō),幾乎所有的 Swing 組件都在這個(gè)包中。

用得比較多的還有 javax.swing.event 包,這個(gè)包定義了事件和事件監(jiān)聽器類,是用來(lái)響應(yīng) Swing 組件觸發(fā)的事件。

另外說(shuō)個(gè)特別的,Swing 的 表格組件(JTable)雖然在 javax.swing 包中,但是它的支持類卻在 javax.swing.table 包中。除了 JTable之外,還有圖形繪制類和編輯器等都是在 javax.swing.table 包里面。

總結(jié)

以上就是關(guān)于 Java 圖形界面開發(fā)工具 Swing 類庫(kù)的初步介紹,想要了解更多關(guān)于 Java Swing 類庫(kù)的使用方法以及其他內(nèi)容,請(qǐng)搜索W3Cschool以往的文章。如果本篇文章對(duì)大家的學(xué)習(xí)有所幫助,還希望大家能夠多多地關(guān)注和支持!


0 人點(diǎn)贊