java.awt 与 java.swing 有什么区别啊?谢谢。
要学的话该学哪个呢?

解决方案 »

  1.   

    AWT 是Abstract Window ToolKit (抽象窗口工具包)的缩写,这个工具包提供了一套与本地图形界面进行交互的接口。AWT 中的图形函数与操作系统所提供的图形函数之间有着一一对应的关系,我们把它称为peers。 也就是说,当我们利用 AWT 来构件图形用户界面的时候,我们实际上是在利用操作系统所提供的图形库。由于不同操作系统的图形库所提供的功能是不一样的,在一个平台上存在的功能在另外一个平台上则可能不存在。为了实现Java语言所宣称的"一次编译,到处运行"的概念,AWT 不得不通过牺牲功能来实现其平台无关性,也就是说,AWT 所提供的图形功能是各种通用型操作系统所提供的图形功能的交集。由于AWT 是依靠本地方法来实现其功能的,我们通常把AWT控件称为重量级控件。 Swing 是在AWT的基础上构建的一套新的图形界面系统,它提供了AWT 所能够提供的所有功能,并且用纯粹的Java代码对AWT 的功能进行了大幅度的扩充。例如说并不是所有的操作系统都提供了对树形控件的支持, Swing 利用了AWT 中所提供的基本作图方法对树形控件进行模拟。由于 Swing 控件是用100%的Java代码来实现的,因此在一个平台上设计的树形控件可以在其他平台上使用。由于在Swing 中没有使用本地方法来实现图形功能,我们通常把Swing控件称为轻量级控件。要学的话,建议学swing
      

  2.   

    Swing以AWT为基础,AWT只具有简单的功能,Swing界面更“花哨”。
    建议学Swing
      

  3.   

    喔,明白了。学习 swing 不学 awt 了。
      

  4.   

    swing是awt的扩展吧
    呵呵 初学 不懂呵
      

  5.   

    Swing的事件处理、DnD、一些绘制等等还是沿用AWT,学好Swing不可能不接触AWT,只是AWT中关于GUI组件的部分现在已经没有必要花太多时间学习了。
      

  6.   

    主要学习 swing awt看看就行。