正如楼上所讲的一样,awt既是“Abstrast Windows Toolkit”,抽象窗体话工具箱,大它定义的许多类已经在java 2中被javax.swing中的类所代替!javax.swing包中的大多数类都定义了GUI元素,这些元素称为Swing components,提供了比java.awt中定义的类更好的替代组件!!!
A heavyweight component is one that is associated with its own native screen resource (commonly known as a peer). A lightweight component is one that "borrows" the screen resource of an ancestor (which means it has no native resource of its own -- so it's "lighter").awt 中比如 Canvas 在 windows 中直接占有一个 DC, 这个 DC 就是本地资源. 很多控件是没有本地资源的, 是利用其祖先的本地资源来绘制. awt 中也有轻量级控件的.
尤其在大型的程序开发中,awt 速度就慢的多
提到:
awt 的 container 都占有一个本地的窗口资源,
而 swing 没有, 全部是纯 java 写的.
何为“本地的窗口资源”
很多控件是没有本地资源的, 是利用其祖先的本地资源来绘制. awt 中也有轻量级控件的.