Java: эффективное программирование, 3-е издание
Полное руководство по передовым методикам программирования на современных платформах Java!
Язык программирования Java существенно изменился со времени предыдущего издания книги, опубликованного вскоре после выпуска Java б. Этот классический труд тщательно обновлен, чтобы читатели могли в полной мере воспользоваться возможностями последних версий языка и его библиотек функций. В современном Java поддерживается несколько парадигм программирования. Поэтому программисты часто испытывают потребность в конкретных рекомендациях, которые и описаны в данной книге. Как и в предыдущих изданиях, каждая глава книги состоит из ряда разделов, в каждом из которых описаны конкретные советы, приведены тонкости платформы Java и содержатся обновленные примеры кода. Для каждой темы приводятся всеобъемлющее описание и пояснения, как следует поступить в данном случае, как не следует и почему.
Третье издание охватывает особенности языка программирования и библиотек, появившихся в Java 7,8 и 9, в том числе конструкции функционального программирования, добавленные к своим объектно-ориентированным корням.
В книгу включены также многие новые советы и глава, посвященная лямбда-выражениям и потокам.
Основные темы книги:
- Функциональные интерфейсы, лямбда-выражения, ссылки на методы и потоки
- Методы по умолчанию и статические методы в интерфейсах
- Вывод типа, включая оператор "ромб" (о) для обобщенных типов
- Аннотация @SafeVarargs
- Конструкция try-с-ресурсами
- Новые возможности библиотек, такие как интерфейс Optional<T>, java. time и удобные фабричные методы для коллекций
Об авторе:
Джошуа Блох - профессор в Университете Карнеги-Меллона. Ранее он был главным архитектором Java в Google, заслуженным инженером в Sun Microsystems и старшим системным дизайнером в Transarc Он возглавлял разработку и реализацию многочисленных возможностей платформы Java, включая усовершенствования в JDK 5.0 и инфраструктуру коллекций Java. Джошуа получил докторскую степень в области компьютерных наук в Университете Карнеги-Меллона и степень бакалавра наук в области компьютерных наук в Колумбийском университете.
Вступительное слово 13
Предисловие 15
Благодарности 19
Глава 1. Введение 25
Глава 2. Создание и уничтожение объектов 29
Глава 3. Методы, общие для всех объектов 67
Глава 4. Классы и интерфейсы 109
Глава 5. Обобщенное программирование 159
Глава 6. Перечисления и аннотации 203
Глава 7. Лямбда-выражения и потоки 245
Глава 8. Методы 283
Глава 9. Общие вопросы программирования 321
Глава 10. Исключения 359
Глава 11. Параллельные вычисления 381
Глава 12. Сериализация 413
Приложение. Соответствие статей второго издания
разделам третьего издания 445
Список литературы 449
Предметный указатель 453