抽象視窗工具組(英語:Abstract Window Toolkit,簡稱:AWT)是Java的平台獨立的視窗系統圖形使用者介面器件工具包。AWT是Java基礎類(JFC)的一部分,為Java程序提供圖形使用者介面(GUI)的標準API

AWT範例之視窗應用

特性

Java釋出的时候,AWT作为Java最弱的组件受到不小的批评。最根本的缺点是AWT在原生的用户界面之上仅提供了一个非常薄的抽象层。例如,生成一个AWT的复选框会导致AWT直接调用下层原生例程来生成一个复选框。不幸的是,一个Windows平台上的复选框同MacOS平台或者各种UNIX风格平台上的复选框并不是那么相同。

这种糟糕的设计选择使得那些拥护Java“一次编写,到处运行(write once, run everywhere)”信条的程序员们过得并不舒畅,因为AWT并不能保证他们的应用在各种平台上表现得有多相似。一个AWT应用可能在Windows上表现很好可是到了Macintosh上几乎不能使用,或者正好相反。在90年代,程序员中流传着一个笑话:Java的真正信条是“一次编写,到处测试(write once, test everywhere)”。导致这种糟糕局面的一个可能原因据说是AWT从概念产生到完成实现只用了一个月。

在第二版的Java开发包中,AWT的器件很大程度上被Swing工具包替代。Swing通过自己绘制器件而避免了AWT的种种弊端:Swing调用本地图形子系统中的底层例程,而不是依赖操作系统的高层用户界面模块。

外部链接

本條目部分或全部内容出自以GFDL授權發佈的《自由線上電腦詞典》(FOLDOC)。