Правильный ответ Иоахима Зауэра. Читайте дальше, только если вам нужен более глубокий обзор различных подходов и эволюции Java GUI.
Первый графический интерфейс Java был (есть) под названием AWT (Abstract Window Toolkit). AWT - это очень простой набор инструментов с ограниченными компонентами графического интерфейса, менеджерами компоновки и событиями. Примером класса AWT является java.awt.Frame
.
Затем Sun разработала более сложное решение -> JFC Swing (Java Foundation Classes, a.k.a. Swing). В Swing Sun создала очень продуманный, гибкий и мощный набор инструментов с графическим интерфейсом. К сожалению, это означает, что Swing требует времени для изучения, и это иногда слишком сложно для обычных ситуаций. Качели построены на деталях AWT. Все детали Swing также являются деталями AWT. Swing использует модель событий AWT и поддерживает классы, такие как Цвета, Изображения и Графика. Примером класса Swing является javax.swing.JFrame
. Здесь вы видите "J" , который является префиксом всех компонентов Swing GUI.
SWT - это низкоуровневый набор инструментов с графическим интерфейсом, который по своей концепции сопоставим с AWT. JFace - это набор улучшенных компонентов и служебных сервисов, упрощающих создание графических интерфейсов с использованием SWT. Разработчики SWT извлекли уроки из реализаций AWT и Swing и попытались создать систему, которая имела бы преимущества обоих без их недостатков. Во многом они преуспели.
Обратите внимание, что оба, AWT и Swing, являются частью пакета J2SE. Хотя SWT - это отдельная сторонняя библиотека, которая выросла с Eclipse IDE (org.eclipse.swt
).
Этот обзор был взят из http://www.ibm.com/developerworks/grid/library/os-swingswt. См. Эту ссылку для более подробной информации.