首頁  >  文章  >  Java  >  awt是什麼

awt是什麼

藏色散人
藏色散人原創
2020-02-07 10:34:406088瀏覽

awt是什麼

AWT(Abstract Window Toolkit),中文譯為抽象視窗工具包,該包提供了一套與本地圖形介面進行交互的接口,是Java提供的用來建立和設定Java的圖形使用者介面的基本工具。 AWT中的圖形函數與作業系統所提供的圖形函數之間有著一一對應的關係,稱之為peers,當利用AWT編寫圖形使用者介面時,實際上是利用本地作業系統所提供的圖形庫。

推薦影片教學:java影片教學

由於不同作業系統的圖庫所提供的樣式和功能是不一樣的,在一個平台上存在的功能在另一個平台上則可能不存在。為了實現Java語言所宣稱的「一次編寫,到處運行(write once, run anywhere)」的概念,AWT不得不透過犧牲功能來實現平台無關性,也即AWT所提供的圖形功能是各種作業系統所提供的圖形功能的交集。

術語解釋

抽象視窗工具包(Abstract Windowing Toolkit) (AWT)是Java的平台獨立的視窗系統,

圖形和用戶介面裝置工具包。 AWT是Java基礎類別 (JFC)的一部分,為Java程式提供圖形使用者介面(GUI)的標準API。

AWT提供了JavaApplet和Java Application中可用的使用者圖形介面GUI中的基本元件(components)。由於Java是一種獨立於平台的程式設計語言,但GUI卻往往是依賴特定平台的,Java採用了相應的技術使得AWT能提供給應用程式獨立於機器平台的接口,這保證了同一程式的GUI在不同機器上運行具有類似的外觀(不一定完全一致)。

Java1.0的AWT(舊AWT)和Java1.1以後的AWT(新AWT)有著很大的區別,新的AWT克服了舊AWT的許多缺點,在設計上有較大改進,使用也更方便,這裡主要介紹新的AWT, 但在Java1.1及以後版本中舊的AWT的程式也可運行。

Abstract Window Toolkit(AWT)是一個圖形過程庫,使用Java語言透過點陣圖顯示來操縱視窗。最後設計者將AWT擴充為Alternative Window工具箱和Applet Widget工具箱。最新的GUI介面稱為Swing,擴充了AWT,程式開發人員可以利用Swing產生獨立於平台的GUI物件。

區別

抽象視窗工具包AWT (AbstractWindow Toolkit) 是API為Java 程式提供的建立圖形使用者介面GUI (Graphics User Interface)工具集,AWT可用於Java的applet和applications中。它支援圖形使用者介面編程的功能包括: 使用者介面元件;事件處理模型;圖形和圖像工具,包括形狀、顏色和字體類別;佈局管理器,可以進行靈活的視窗佈局而與特定視窗的尺寸和螢幕分辨率無關;資料傳送類,可以透過本地平台的剪貼簿來進行剪下和貼上。

優勢

Java釋出的時候,AWT作為Java最弱的元件受到不小的批評。最根本的缺點是AWT在原生的使用者介面之上僅提供了一個非常薄的抽象層。例如,產生AWT的複選框會導致AWT直接呼叫下層原生例程來產生一個複選框。不幸的是,一個Windows平台上的複選框同MacOS平台或各種UNIX風格平台上的複選框並不是那麼相同。

這種糟糕的設計選擇使得那些擁護Java「一次編寫,到處運行(write once, run anywhere)」信條的程式設計師們過得併不舒暢,因為AWT並不能保證他們的應用在各種平台上表現得有多相似。一個AWT應用程式可能在Windows上表現很好可是到了Macintosh上幾乎不能使用,或者正好相反。在90年代,程式設計師中流傳著一個笑話:Java的真正信條是「一次編寫,到處測試 (write once, test everywhere)」。導致這種糟糕局面的一個可能原因據說是AWT從概念產生到完成實作只花了一個月。

在第二版的Java開發包中,AWT的裝置很大程度被Swing工具包取代。 Swing透過自己繪製裝置而避免了AWT的種種弊端:Swing呼叫本地圖形子系統中的底層例程,而不是依賴作業系統的高層使用者介面模組。

以上是awt是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn