Список Java API

Есть три типа Java API:

  • официальный основной Java API, содержащийся в JDK или JRE, в одном из вариантов Java. Три варианта платформы Java: Java ME (Micro edition), Java SE (Standard edition) и Java EE (Enterprise edition).
  • дополнительные официальные API, которые можно загрузить отдельно. Спецификации этих API определяются в соответствии с Java Specification Request (JSR), а иногда и некоторые из этих API позднее включаются в основные API платформы (наиболее ярким примером такого рода является Swing).
  • неофициальный API, разработанный третьими сторонами и не связанный с JSR.

Третьи стороны могут свободно реализовать любые спецификации JSR для официального API (даже для основного API языка), при условии, что они соответствуют Technology Compatibility Kit (TCK) для данного JSR (TCK представляет собой набор тестов для проверки соответствия реализаций для JSR). Результатом этой свободы является то, что у многих официальных API больше реализаций чем эталонных реализаций от Sun

Ниже приводится частичный список API для Java.

Официальные API

Java Platform, Standard Edition (Java SE)

API, входящие в состав поставки:[1]

Название Акроним Пакеты, содержащие API Описание и история версий
Abstract Window Toolkit AWT java.awt Графическая библиотека. Первый релиз в версии 1.0.
Java Collections Framework JCF java.util Коллекция стандартных структур данных, таких как списки, карты, очереди, стеки. Включен в J2SE 1.2 и более поздние.
Swing javax.swing Графическая библиотека. Включен в J2SE 1.2 и более поздние.
Accessibility javax.accessibility[2]
Drag n Drop java.awt.datatransfer
java.awt.dnd[3]
Image I/O javax.imageio
javax.imageio.*[4]
Sound javax.sound.midi
javax.sound.midi.spi
javax.sound.sampled
javax.sound.sampled.spi[5]
Библиотеки для работы с аудиофайлами.
Java Database Connectivity JDBC java.sql
javax.sql[6]
Java Cryptography Extension JCE javax.crypto
javax.crypto.interfaces
javax.crypto.spec[7]
Включен в J2SE 1.4 и более поздние, доступен как дополнительный пакет для версий 1.2 и 1.3.
Java Authentication and Authorization Service JAAS javax.security.auth Включен в J2SE 1.4 и более поздние, ранее выпущен в виде дополнительного пакета с версии 1.3.
Java Secure Socket Extension JSSE javax.net
javax.net.ssl
java.security.cert[8]
Набор пакетов для обеспечения безопасных Интернет-коммуникаций. Включен в J2SE 1.4 и более поздние, JSSE 1.0.3 был дополнительным пакетом для Java 2 SDK версий 1.2 и 1.3.
Java Native Interface JNI Позволяет Java коду, выполняемому на виртуальной машине Java (JVM), вызывать и вызываться родными приложениями (программ для конкретных аппаратных средств и операционной системы) и библиотеки, написанные на других языках, таких как C, C + + и язык ассемблера.
Java Management Extensions JMX javax.management
javax.management.loading
javax.management.modelmbean
javax.management.monitor
javax.management.openmbean
javax.management.relation
javax.management.remote
javax.management.remote.rmi
javax.management.timer
Технология, поставляющая инструменты для управления и мониторинга приложений, системных объектов, устройств (напр. принтеров) и сервис-ориентированных сетей. Включено в J2SE 1.5 и более поздних, до этого поставлялся как дополнительный пакет.

Дополнительные API (загружаются отдельно)

Название Акроним Описание и история версий Ссылка
Java Advanced Imaging JAI Набор интерфейсов, поддерживающих высокоуровневую парадигму программирования и упрощающих манипуляции с изображениями.
Java Communications API JCA
Java Data Objects JDO A specification of Java object persistence.
JavaHelp Полнофункциональная, расширяемая система помощи, которая позволяет включить справку в апплеты, компоненты, приложения, операционные системы и устройства.
Java Media Framework JMF API, позволяющее встраивать в Java-приложения и апплеты аудио, видео и другое медиа, контролируемое во времени.
Java Naming and Directory Interface JNDI API для служб каталогов.
Java Speech API JSAPI API для синтеза речи
Java 3D J3D API основанной на графе сцены 3D-графики. available here
Java OpenGL JOGL Библиотека-обёртка для OpenGL. available here
Java Mail (нет) Фреймворк для создания почтовых приложений и приложений обмена сообщениями available here
Java USB for Windows (нет) USB-коммуникации Java-приложений available here

Java Platform, Enterprise Edition (Java EE)

API, входящие в состав поставки:

Название Акроним Пакеты, содержащие API
Java Message Service JMS
JavaServer Faces JSF javax.faces

Опциональные API (загружаются отдельно)

Название Акроним Available from
Java API for XML-Based RPC JAX-RPC available here

Java Platform, Micro Edition (Java ME)

Название Акроним Available from
Connected Limited Device Configuration CLDC Эталонная реализация — available here
Java Telephony API available here

Неофициальные API (Released by third parties)

Этот список не является полным, так как число API для платформы Java огромно.

  • Eclipse - среда разработки
  • JScience - численный анализ
  • Javolution - библиотека реального времени
  • Standard Widget Toolkit (SWT) - Windowing library
  • LZMA SDK, Java реализация SDK, используемого популярным архивирующим ПО 7-Zip ([1])

Development assistance

  • Lady4j. Programming assistant and application server issue solver ([2])
  • Cobra HTML parser and renderer library

Rendering libraries

См. также

Примечания

  1. JDK 6 Documentation. Дата обращения: 8 июля 2010. Архивировано 15 апреля 2010 года.
  2. JDK 6 Java Accessibility-related APIs & Developer Guides — from Sun Microsystems. Дата обращения: 8 июля 2010. Архивировано 16 мая 2009 года.
  3. Drag and Drop Packages. Дата обращения: 8 июля 2010. Архивировано 22 марта 2009 года.
  4. JDK 6 Image I/O-related APIs & Developer Guides — from Sun Microsystems. Дата обращения: 8 июля 2010. Архивировано 3 августа 2009 года.
  5. JDK 6 Java Sound-related APIs & Developer Guides — from Sun Microsystems. Дата обращения: 8 июля 2010. Архивировано 5 января 2010 года.
  6. JDK 6 Java Database Connectivity (JDBC)-related APIs & Developer Guides — from Sun Microsystems. Дата обращения: 8 июля 2010. Архивировано 25 марта 2009 года.
  7. Java SE Security. Дата обращения: 8 июля 2010. Архивировано 15 сентября 2007 года.
  8. Java SE Security. Дата обращения: 8 июля 2010. Архивировано 16 сентября 2007 года.