Swing和AWT

原文出: http://cherry007.iteye.com/blog/943619



AWT与Swing

使用区别
    使用Swing组件创建程序是因为它比AWT更为专业,而且Swing提供了更多的附加元素。比如说,通过Swing的JEditorPane组件可以在Java程序中使用HTML格式文本。而AWT实现同样功能不但困难,而且要花费相当多的时间。
    Swing并不一定能使程序更容易床加你,但是可以使程序更加美观,而且容易在其他平台上运行。Swing组件一般比AWT组件强大得多。
    AWT类分为两部分。一部分可以安全的混入Swing类;另一部分要用Swing的等价类对其替换。





使用Swing编程需要注意:
1.  不要再一个程序中混合使用Swing和AWT GUI组件。原则上他们可以共存,但是可能会发生无法预料的情况。在使用GUI构件时,只用Swing组件可以减少问题发生。至少,应在最高层的容器中使用如JFrame或JApplet等Swing组件。然而,在Swing类中混合使用非GUI的AWT类不会引起任何问题。
2.  尽管AWT组件是线程安全的,但Swing GUI组件却不是。如果创建的程序的GUI元素要用到线程操作,就需要使用自己设置的同步机制。如当程序中使用线程操作一个列表的表项时,若用户也在做同样的事,这是必须执行同步机制,以避免破坏列表的完整性。

你可能感兴趣的:(java,编程,swing)