Basic: Большинство библиотек классов GUI в C ++ зависят от платформы не только из-за разного аппаратного обеспечения, но и из-за тонких различий между «внешним видом» различных операционных систем Windows.Java Abstract Window Toolkit предоставляет кроссплатформенную библиотеку, которая стремится соблюдать соглашения о взглядах и ощущениях различных платформ ОС.
Toolkit ------------------------------------------------ AWT
--------|---------
Button List JVM
------|-------------|--------------------------------------------------
Button Peer List Peer Native GUI (Windows, Mac, X)
Подробнее о Программирование событий Java GUI
AWT предоставляет два уровня API:
Общий интерфейс между Java и собственной системой , используемой для создания окон, события и менеджеры по расположению.Этот API лежит в основе программирования Java GUI, а также используется Swing и Java 2D.Это содержит:
- Интерфейс между собственной оконной системой и приложением Java;
- Ядро подсистемы событий GUI;
- Несколько менеджеров раскладки;
- Интерфейс для устройств ввода, таких как мышь и клавиатура;а также
- A java.awt.datatransfer пакет для использования с буфером обмена и перетаскиванием.
Базовый набор графических виджетовтакие как кнопки, текстовые поля и меню.Он также предоставляет собственный интерфейс AWT , который позволяет библиотекам рендеринга, скомпилированным в собственный код, рисовать непосредственно на поверхности рисования объекта AWT Canvas.
AWT также делает доступными некоторые приложения более высокого уровня, такие как:Доступ к системному трею в поддерживающих системах;и Возможность запуска некоторых приложений для настольных компьютеров, таких как веб-браузеры и почтовые клиенты, из приложения Java.Чтобы получить исходный код классов Native OpenJDK AWT, используйте ссылку ниже
jdk6 / jdk6-gate / jdk / src / windows / native / sun / jdk6 / jdk6-gate / jdk / src / windows / native / sun / windows / (классы Windows-AWT-Native).
OpenJDK (GPL)
- Sun объявила в 2006 году, что Java станет программным обеспечением с открытым исходным кодом.
- Выпущен полный исходный код библиотеки классов Java под GPL 8 мая 2007 года,
- 11 октября 2010 года IBM, безусловно крупнейший участник проекта Apache Harmony, решила присоединиться к Oracle в проекте OpenJDK, фактически перенеся свои усилия с Harmony на OpenJDK.
- 11 январяВ 2011 году на OpenJDK был создан проект Mac OS X Port, и Apple сделала первый публичный вклад кода в проект.Первоначальный вклад Apple был основан на порте OpenJDK BSD ( OpenJDK ™ 6 Source Release ).
Ссылка:
[ Репозитории OpenJDK .]
Открыть jdk6 / jdk6-gate / jdk / src / share / classes / java / awt / (Пример исходного кода пакета AWT)
Основной OpenJDK проект , основанный на JDK 7
Вы можете узнать об особенностях OpenJDK здесь
Caciocavallo , Проект, который предоставляет Java API на основе OpenJDK для упрощения реализации AWT на новых системах. В проекте успешно реализованы виджеты AWT с использованием Java2D.[OpenJDK Список рассылки .]
Прочитайте Документация AWT , чтобы получить четкие знания о его реализации.
Fallow awt-dev Списки рассылки , чтобы принять участие.