Оглавление
Библиотека классов Java
-
Основы JCL
- JCL – это набор динамически загружаемых библиотек для JVM.
- Платформа Java не зависит от ОС, поэтому приложения не используют встроенные библиотеки.
- JCL предоставляет стандартные классы для общих задач и функций, связанных с ОС.
-
Функции и цели JCL
- Предоставляет известные классы, такие как контейнеры и регулярные выражения.
- Обеспечивает абстрактный интерфейс для задач, зависящих от ОС.
- Может эмулировать или проверять наличие функций, которые не поддерживаются базовой ОС.
-
Структура и загрузка JCL
- Почти полностью написан на Java, с некоторыми частями, требующими доступа к ОС.
- Классы для доступа к ОС используют собственные интерфейсы Java.
- Хранится в одном файле “rt.jar”, который входит в состав JRE и JDK.
- Не обязательно должен быть указан в пути к классам приложения.
-
Модульность и совместимость
- Разрушена монолитный JAR-файл “rt.jar” в Java 9, JCL разделен на модули с зависимостями.
- JCL должен соответствовать требованиям Java Technology Compatibility Kit.
-
Основные пакеты JCL
- Включает базовые классы и интерфейсы для языка и выполнения.
- Доступ к файловой системе, сетям, математическим вычислениям, коллекциям и другим.
- Графический интерфейс, звук, текст, изображения, XML, безопасность, базы данных и другие.
-
Лицензирование и история
- До OpenJDK JDK был основан на проприетарной лицензии.
- Sun выпустила библиотеку классов под GPL в 2007 году, за исключением некоторых проприетарных частей.
- Oracle выпустила все бинарные модули с открытым исходным кодом в 2010 году.
- Большинство проприетарных частей были заменены открытыми альтернативами.
-
Альтернативные реализации и рекомендации
- GNU Classpath – основная библиотека классов свободного ПО для Java.
- Apache Harmony – библиотека классов, реализующая другие части стека Java.
- Ссылки на документацию и другие ресурсы по Java.