1. 程式人生 > >Java中awt和swing的關系和區別

Java中awt和swing的關系和區別

界面 及其 軟件 功能性 圖形圖像 自己 輕量級 c++程序 控制

概述

awt是抽象組件窗口工具包,是Java最早的用於編寫圖形應用程序的開發包。

Swing是為了補充awt的一些功能性的缺失問題而開發的包,以awt為基礎的。

軟件包 java.awt 的描述

包含用於創建用戶界面和繪制圖形圖像的所有類。在 AWT 術語中,諸如按鈕或滾動條之類的用戶界面對象稱為組件。Component 類是所有 AWT 組件的根。有關所有 AWT 組件的公共屬性的詳細描述,請參見 Component。

當用戶與組件交互時,一些組件會激發事件。AWTEvent 類及其子類用於表示 AWT 組件能夠激發的事件。有關 AWT 事件模型的描述,請參見 AWTEvent。

容器是一個可以包含組件和其他容器的組件。容器還可以具有布局管理器,用來控制容器中組件的可視化布局。AWT 包帶有幾個布局管理器類和一個接口,此接口可用於構建自己的布局管理器。

由於AWT 是依靠本地方法來實現其功能的,我們通常把AWT控件稱為重量級控件。

軟件包 javax.swing

提供一組“輕量級”(全部是 Java 語言)組件,盡量讓這些組件在所有平臺上的工作方式都相同。

總結

由於實現的不同,awt是機遇本地方法的C/C++程序,運行速度比較快,消耗資源少;Swing是基於awt的Java程序,所以運行速度慢。對於嵌入式應用,往往采用AWT;通常在標準的Java應用中,使用Swing犧牲運行速度換取開發效率和功能。

鄙人學疏才淺,如有不妥或錯誤之處,望賜正。

2017-09-11

Java中awt和swing的關系和區別