java awt;java applet;java swing分别是啥?他们之间有啥联系和区别?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java awt;java applet;java swing分别是啥?他们之间有啥联系和区别?相关的知识,希望对你有一定的参考价值。

java awt;java applet;java swing分别是什么?他们之间有什么联系和区别?

楼上说的很详细了,我再说几点吧。

awt、swing都是用来开发GUI的。

关于那个 applet(java小程序,主要用来开发显示在网页上的程序)

在java刚出生的时候,主要就是用来开发applet程序,主要用到 awt。

swing是在awt的基础上,进行了全新的理念设计,开发出来的GUI工具包。

现实中的情况是:

1. applet程序现在已经很少有人在使用了。
2. swing主要用来开发java桌面程序,在开发java的桌面程序的时候也离不开awt,例如awt里面的事件方面的类会经常用到。

你可以不学applet,但你不能不学awt和swing
参考技术A Applet 是嵌入网页的小程序!
awt和swing里的都是GUI图形所需的类
awt和SWING没什么区别
唯一的区别就是awt没有swing强大(比如:awt里的按钮不能添加图片,而swing里的按钮可以添加) awt是SUN的失败品,所以后来才弄了个swing
祝你成功!
参考技术B Java Applet :

Java Applet就是用Java语言编写的一些小应用程序,它们可以直接嵌入到网页中,并能够产生特殊的效果。包含Applet的网页被称为Java-Powered页,可以称其为Java支持的网页。
当用户访问这样的网页时,Applet被下载到用户计算机上执行,但前提是用户使用的是支持 Java的网络浏览器。由于Applet是再用户计算机上执行的,因此它的执行速度是不受网络宽带或者MODEM存取速度的限制,用户可以更好的欣赏网页上Applet产生的多媒体效果。
在Java Apple中,可以实现图形绘制、字体和颜色控制、动画和声音的插入、人机交互及网络交流等功能.Apple还提供各种名为抽象窗口工具箱 (Abstract Window Toolkit,AWT)的窗口环境开发工具,但AWT的设计是存在缺陷的,取而代之的Swing技术为Java GUI足见的轻量组建.它们利用用户计算机的GUI元素,可以建立标准的图形用户界面,如窗口、按钮、滚动条等。目前,在网络上有非常多的Applet范例来生动地展现这些功能.

AWT:

AWT(Abstract Windowing Toolkit),中文译为抽象窗口工具包,是Java提供的用来建立和设置Java的图形用户界面的基本工具。AWT由Java中的java.awt包提供,里面包含了许多可用来建立与平台无关的图形用户界面(GUI)的类,这些类又被称为组件(components)。
抽象窗口工具包 (Abstract Windowing Toolkit) (AWT)是Java的平台独立的窗口系统, 图形和用户界面器件工具包。AWT是Java基础类 (JFC)的一部分,为Java程序提供图形用户界面(GUI)的标准API。
AWT提供了Java Applet和Java Application中可用的用户图形界面GUI中的基本组件(components)。由于Java是一种独立于平台的程序设计语言,但GUI却往往是依赖于特定平台的,Java采用了相应的技术使得AWT能提供给应用程序独立于机器平台的接口,这保证了同一程序的GUI在不同机器上运行具有类似的外观(不一定完全一致)。
Java1.0的AWT(旧AWT)和Java1.1以后的AWT(新AWT)有着很大的区别,新的AWT克服了旧AWT的很多缺点,在设计上有较大改进,使用也更方便,这里主要介绍新的AWT, 但在Java1.1及以后版本中旧的AWT的程序也可运行。
抽象窗口工具包AWT (Abstract Window 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调用本地图形子系统中的底层例程,而不是依赖操作系统的高层用户界面模块。

Swing:

Swing是一个用于开发Java应用程序用户界面的开发工具包。它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。
工具包中所有的包都是以swing作为名称,例如javax.swing,javax.swing.event
用Swing创建图形界面步骤:
(1)导入Swing包
(2)选择界面风格
(3)设置顶层容器
(4)设置按钮和标签
(5)将组件放到容器上
(6)为组件增加边框
(7)处理事件
(8)辅助技术支持

java.awt

package bag;

import java.applet.Applet;
import java.awt.Label;

public class AWTComponents extends Applet {
Label myLabel;

}

以上是关于java awt;java applet;java swing分别是啥?他们之间有啥联系和区别?的主要内容,如果未能解决你的问题,请参考以下文章

java中applet中的drawimage怎么用

java.awt

Java API 各个包的内容解释

Java applet 井字游戏——怎样重新开始?(留问题)

java小程序applet里不能写线程吗?创建线程编译能通过,但是运行小程序会初始化失败。应该怎么

Java Applet、AWT Refresh、Mac OS X 10.4 上的问题