第一个不同点就是 SWT 的类库结构不像 Swing, 没有单一的父组件。
第二个不同点就是 SWT 没有利用 Java 的自带垃圾收集功能来管理对象的销毁, 大部分对象都必须调用 dispose() 方可完成资源的释放。
第三个不同点就是在组件的显示上, SWT 抽象了一个 Display 对象来处理 SWT 和操作系统底层组件的通信, 资源申请释放, 事件循环, 任何显示的 SWT 组件必须有且仅有一个 Display 对象。
第四个不同点就是 Swing 的组件实现了 MVC 机制, 但是 SWT 没有(目前来看)提供 MVC 机制。 也就是说绝大多数 SWT 组件都是不可以更换显示的外观的。
第五个不同点就是绝大多数的 SWT 组件创建的时候都必须指定父组件和风格属性, 也就是必须有一个 parent 对象, 也不能运行的时候动态变更父组件, 具体例如 Menu 对象里有 Decorations getParent () , 但是并无对应的 setParent() 方法。