请问JAVA里Swing包和Awt包有什么区别?
大哥大姐指点指点!

解决方案 »

  1.   

    有在这儿问的功夫早google到了swing和awt都是java的用户界面开发包..awt要早于swing.不同的在于awt基于本地调用,而swing则完全自行绘制.所以awt会拥有与平台相一致的外观风格(近似).而swing由LookAndFeel来模拟相应平台的外观.
      

  2.   

    接楼上:
    Swing 是 lightweight 的 API,所以无所不能,不但有各式各样先进的组件,而且连组件风格都可抽换。
    不要以为 Swing 是用来取代 AWT 的,其实 Swing 是架构在 AWT 之上做出来的(Swing 有四个 heavyweight 组件),没有 AWT,也就不会有 Swing。Swing 的出现只是减少程序员直接使用 AWT 的机会,而不会让 AWT 消失。不管你选用 AWT 或 Swing 来开发你的 GUI,最好不要同时使用两者,因为: 
    AWT 或 Swing 的视觉风格差异很大,混用两者感觉不协调。 
    Swing 的组件大部分都是 lightweight,而 AWT 的组件一律是 heavyweight,两者混在一起可能会造成 Z-Order 的错乱
    混用 AWT 和 Swing 很可能会造成 Swing 的最佳化无用武之地,结果速度比只用 AWT 或只用 Swing 都来得慢。 
    虽然 Swing 的组件有诸多优点,但是它有一项致命的缺点 ...「慢」。
      

  3.   

    awt有些调用本地系统api的意思
    swing完全自己写,但是慢,写的程序适合跨越所有平台
    swt融合了awt和swing