Java Standard Edition

Автор: Алексей Литвинюк


1 Введение 2 Типичный пример применения 3 Сортировка списка с использованием анонимных классов 4 Примеры использования 5 Ссылки


Автор: Алексей Литвинюк


Автор: Алексей Литвинюк


J2SE содержит множество нововведений в самом языке Java, в том числе поддержка параметризуемых классов (generics) и улучшенного цикла for (enhanced for loop). В предыдущих статьях мы подробно рассказывали о параметризуемых классах и об улученном цикле for, а в этой статье мы рассмотрим аннотации, встроенные в J2SE 5.0.


Одной из популярных функциональных возможностей библиотек J2SE 5.0 является добавление средств обеспечения параллельной работы. Предоставленные как часть JSR 166 эти средства обеспечивают развитые возможности программирования параллельных процессов, устраняющие необходимость использования разработчиками ключевого слова synchronized и связанных с ним блокировок. Среди предлагаемых ими функциональных возможностей присутствуют: поддержка блокировочных таймаутов, множественные переменные условия для одной блокировки, блокировки чтения/записи и способность прерывать поток, ожидающий снятия блокировки. Более подробную информацию по дополнительной поддержке блокировок можно найти в документации по пакету java.util.concurrent.locks.


1 Введение 2 Временные затраты на открытие файла, его чтение и закрытие 3 Производительность и чтение байтов из файла 4 Подсчет количества строк текстового файла


Log4j – это инструмент для журналирования с открытым исходным кодом, разработанный под эгидой глобального проекта Jakarta Apache. Он представляет собой набор API с помощью которых, разработчики могут вставлять в свой код выражения, которые выводят некоторую информацию (отладочную, информационную, сообщения об ошибках и т.д.), и конфигурировать этот вывод с помощью внешний конфигурационных файлов. В этой статье рассматриваются основные идеи, положенные в данный инструмент, а также будут затронуты некоторые интересные моменты, касающиеся написания демонстрационного web-приложения.


В настоящее время в Интернете можно найти множество статей как о перспективности платформы Java, так и об её ограниченности. Многих программистов, только присматривающихся к Яве, могут отпугнуть частые заявления, типа: «низкое быстродействие», «отсутствие указателей» и т.д.


Когда в конце 2004 г. вышла версия java 1.5 (или 5.0, если так sun-у будет приятнее), то одной из самых ожидаемых мною новостей была добавленная поддержка аннотаций. Аннотации это способ внедрения в исходный текст программы специальных маркеров, меток. Метки эти применяются к классам, полям класса, методам, параметрам методов и даже отдельным переменным объявленным внутри какой-то функции. Затем эти метки (играющие роль как бы языка внутри языка и позволяющего расширить его новыми "фишками") обрабатывались специальным образом или компилятором или некоторой утилитой, создающей на основании меток, например, конфигурационный файл приложения. Надо сказать, что идея аннотаций или метаданных появилась не тогда в 2004 (Боже ... прошло целых четыре года), а гораздо раньше (и java явно не была самая первая). Еще до выхода java 1.5 и некоторое время после, я использовал XDoclet. Решение похожее на аннотации в java и позволяющее метить код специальными маркерами (правда, реализовывалось это не отдельными конструкциями поддерживаемыми на уровне языка а вставками в текст комментариев).