AWT和SWING?
经常在一些JAVA的资料上看到这样一句话:AWT是重量型组件、SWING是轻量型组件。
请问此处的重量型和轻量型是什么意思?
问题点数:20、回复次数:9Top
1 楼SuperMMX(笑天子)回复于 2002-04-11 12:06:21 得分 20
就是占不占用本地窗口资源.
awt 的 container 都占有一个本地的窗口资源,
而 swing 没有, 全部是纯 java 写的.Top
2 楼magictxh123(华)回复于 2002-04-11 12:30:16 得分 0
轻量组件没有本地对等组件,而且在它们的重量容器中绘制。Top
3 楼pilishine()回复于 2002-04-11 12:33:56 得分 0
对程序来说就是运行速度快和慢的问题
尤其在大型的程序开发中,awt 速度就慢的多Top
4 楼lijunyi(lijunyi)回复于 2002-04-11 13:00:03 得分 0
尤其在性能方面awt远远比不上swing尤其是图形界面以及表、数结构Top
5 楼Sunme(武建林)回复于 2002-04-11 13:25:56 得分 0
正如楼上所讲的一样,awt既是“Abstrast Windows Toolkit”,抽象窗体话工具箱,大它定义的许多类已经在java 2中被javax.swing中的类所代替!javax.swing包中的大多数类都定义了GUI元素,这些元素称为Swing components,提供了比java.awt中定义的类更好的替代组件!!!Top
6 楼Sunme(武建林)回复于 2002-04-11 13:29:05 得分 0
Swing组件类一般都是由java.awt中的基础类派生而成的,他对后者由依赖关系,因此,你还不能忽略java.awt!Top
7 楼kare(水哥)回复于 2002-04-11 13:40:39 得分 0
SuperMMX(笑天子)
提到:
awt 的 container 都占有一个本地的窗口资源,
而 swing 没有, 全部是纯 java 写的.
何为“本地的窗口资源”Top
8 楼SuperMMX(笑天子)回复于 2002-04-11 19:15:18 得分 0
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 中也有轻量级控件的.Top
9 楼letmeto(冰玉)回复于 2002-04-12 12:09:06 得分 0
这是个说了很多的话题了。你在已经解决的问题中回找到很多的!Top




