JAVA中AWT本质是什么?

Python015

JAVA中AWT本质是什么?,第1张

你好,这是一些用于GUI类封装起来的一个包,主要是在AWT包中的,作为一个重量级的GUI编辑,不同于SWING包下的一些

轻量级

的类。只有你在运用这些类的时候,导入包的时候才可以使用。里面给你封装了很多界面的组件,例如窗体,面板,按钮等。也包括一些布局的方式。但是它由于不是轻量级的组件,所以开发比较耗时,而且平台的局限性也比较大。希望能帮到你。

awt和swing的区别:

1.awt是基于本地方法的C/C++程序,其运行速度比较快;

而swing是基于awt的Java程序,其运行速度比较慢。

2.AWT的控件在不同的平台可能表现不同,而Swing在所有平台表现一致。

3.AWT和Swing的实现原理不同。

AWT的图形函数与操作系统提供的图形函数有着一一对应的关系。

而Swing 不仅提供了AWT 的所有功能,还用纯粹的Java代码对AWT的功能进行了大幅度的扩充。

4.awt是抽象窗口组件工具包,是 java 最早的用于编写图形节目应用程序的开发包;

但swing是为了解决awt存在的问题而新开发的包,它以awt为基础的。

扩展资料:

在实际应用中,应该使用AWT还是Swing取决于应用程序所部署的平台类型。

对于一个嵌入式应用,目标平台的硬件资源往往非常有限,而应用程序的运行速度又是项目中至关重要的因素。

在这种矛盾的情况下,简单而高效的AWT当然成了嵌入式Java的第一选择。

在普通的基于PC或者是工作站的标准Java应用中,硬件资源对应用程序所造成的限制往往不是项目中的关键因素。

所以在标准版的Java中则提倡使用Swing, 即通过牺牲速度来实现应用程序的功能。

Dimension类其实就是封装了了两个数据:width和height。

如果打开Dimension类的源代码,可以看到如下构造器:

public Dimension(int width, int height) {

this.width = width

this.height = height

}

通过该构造器可以看到Dimension就是封装了width和height两个数据。

因此当你调用frame.setPreferredSize(new Dimension(300, 200))时,实际上就相当于为给frame设置了推荐的宽(width)和高(height),该窗口就会根据它所包含的组件大小来计算该窗口所需要的宽和高。可以去看看”疯狂Java讲义“的11章,这里讲得很透彻