Философия Java. Библиотека программиста

Эккель Б.

Java нельзя понять, взглянув на него только как на коллекцию некоторых характеристик, - необходимо понять задачи этого языка как частные задачи программирования в целом.

Эта книга - о проблемах программирования: почему они стали проблемами, и какой подход использует Java в их решении. Поэтому обсуждаемые в каждой главе черты языка неразрывно связаны с тем, как они используются для решения определенных задач.

Эта книга, выдержавшая в оригинале не одно переиздание, за глубокое и поистине философское изложение тонкостей языка считается одним из лучших пособий для программирующих на Java. В издании автор постарался полностью интегрировать усовершенствования Java SE5/6, включить и использовать их во всей книге.

Издание четвертое.

Издательство: Питер, 2009 г.

ISBN 978-5-388-00003-3, 978-0-0131872486

Количество страниц: 640.

Содержание книги «Философия Java. Библиотека программиста»:

  • 13 Предисловие
    • 14 Java SE5 и SE6
    • 14 Благодарности
  • 17 Глава 1. Введение в объекты
    • 18 Развитие абстракции
    • 20 Объект имеет интерфейс
    • 22 Объект предоставляет услуги
    • 23 Скрытая реализация
    • 24 Повторное использование реализации
    • 25 Наследование
    • 29 Взаимозаменяемые объекты и полиморфизм
    • 33 Однокорневая иерархия
    • 33 Контейнеры
    • 35 Параметризованные типы
    • 36 Создание, использование объектов и время их жизни
    • 38 Обработка исключений: борьба с ошибками
    • 38 Параллельное выполнение
    • 39 Java и Интернет
    • 47 Резюме
  • 48 Глава 2. Все является объектом
    • 48 Для работы с объектами используются ссылки
    • 49 Все объекты должны создаваться явно
    • 53 Объекты никогда не приходится удалять
    • 54 Создание новых типов данных
    • 56 Методы, аргументы и возвращаемые значения
    • 58 Создание программы на Java
    • 60 Ключевое слово static
    • 61 Наша первая программа на Java
    • 64 Комментарии и встроенная документация
    • 70 Стиль оформления программ
    • 70 Резюме
  • 71 Глава 3. Операторы
    • 71 Простые команды печати
    • 72 Операторы Java
    • 82 Литералы
    • 92 В Java отсутствует sizeof()
    • 100 Резюме
  • 101 Глава 4. Управляющие конструкции
    • 105 Синтаксис foreach
    • 107 return
    • 108 break и continue
    • 109 Нехорошая команда goto
    • 115 Резюме
  • 116 Глава 5. Инициализация и завершение
    • 116 Конструктор гарантирует инициализацию
    • 118 Перегрузка методов
    • 130 Очистка: финализация и сборка мусора
    • 137 Инициализация членов класса
    • 140 Инициализация конструктором
    • 146 Инициализация массивов
    • 151 Резюме
  • 152 Глава 6. Управление доступом
    • 153 Пакет как библиотечный модуль
    • 159 Спецификаторы доступа Java
    • 163 Интерфейс и реализация
    • 164 Доступ к классам
    • 167 Резюме
  • 169 Глава 7. Повторное использование классов
    • 170 Синтаксис композиции
    • 172 Синтаксис наследования
    • 176 Делегирование
    • 178 Сочетание композиции и наследования
    • 184 Композиция в сравнении с наследованием
    • 185 protected
    • 186 Восходящее преобразование типов
    • 188 Ключевое слово final
    • 195 Инициализация и загрузка классов
    • 197 Резюме
  • 198 Глава 8. Полиморфизм
    • 199 Снова о восходящем преобразовании
    • 201 Особенности
    • 208 Конструкторы и полиморфизм
    • 216 Ковариантность возвращаемых типов
    • 217 Разработка с наследованием
    • 220 Резюме
  • 221 Глава 9. Интерфейсы
    • 221 Абстрактные классы и методы
    • 224 Интерфейсы
    • 227 Отделение интерфейса от реализации
    • 233 Расширение интерфейса через наследование
    • 236 Интерфейсы как средство адаптации
    • 239 Вложенные интерфейсы
    • 242 Интерфейсы и фабрики
    • 244 Резюме
  • 245 Глава 10. Внутренние классы
    • 245 Создание внутренних классов
    • 246 Связь с внешним классом
    • 248 Конструкции .this и .new
    • 249 Внутренние классы и восходящее преобразование
    • 253 Безымянные внутренние классы
    • 261 Внутренние классы: зачем?
    • 272 Наследование от внутренних классов
    • 272 Можно ли переопределить внутренний класс?
    • 274 Локальные внутренние классы
    • 276 Резюме
  • 277 Глава 11. Коллекции объектов
    • 277 Параметризованные и типизованные контейнеры
    • 280 Основные концепции
    • 281 Добавление групп элементов
    • 285 List
    • 288 Итераторы
    • 291 LinkedList
    • 292 Стек
    • 294 Множество
    • 296 Карта
    • 298 Очередь
    • 299 PriorityQueue
    • 301 Collection и Iterator
    • 306 Идиома "метод-адаптер"
    • 309 Резюме
  • 310 Глава 12. Обработка ошибок и исключения
    • 310 Основные исключения
    • 312 Перехват исключений
    • 314 Создание собственных исключений
    • 319 Спецификации исключений
    • 320 Перехват произвольных исключений
    • 328 Стандартные исключения Java
    • 330 Завершение с помощью finally
    • 334 Использование finally с return
    • 336 Ограничения при использовании исключений
    • 339 Конструкторы
    • 343 Идентификация исключений
    • 344 Альтернативные решения
    • 351 Резюме
  • 352 Глава 13. Информация о типах
    • 352 Необходимость в динамическом определении типов (RTTI)
    • 372 Регистрация фабрик
    • 376 Рефлексия: динамическая информация о классе
    • 380 Динамические посредники
    • 384 Объекты с неопределенным состоянием
    • 390 Интерфейсы и информация о типах
    • 394 Резюме
  • 397 Глава 14. Параметризация
    • 398 Простая параметризация
    • 404 Параметризованные интерфейсы
    • 407 Параметризованные методы
    • 419 Построение сложных моделей
    • 437 Ограничения
    • 440 Метасимволы
    • 452 Резюме
  • 454 Глава 15. Массивы
    • 454 Особенности массивов
    • 456 Массив как объект
    • 458 Возврат массива
    • 460 Многомерные массивы
    • 463 Массивы и параметризация
    • 465 Создание тестовых данных
    • 470 Создание массивов с использованием генераторов
    • 474 Вспомогательный инструментарий Arrays
    • 482 Резюме
  • 483 Глава 16. Система ввода/вывода Java
    • 484 Класс File
    • 489 Ввод и вывод
    • 491 Добавление атрибутов и интерфейсов
    • 494 Классы Reader и Writer
    • 497 RandomAccessFile: сам по себе
    • 498 Типичное использование потоков ввода/вывода
    • 505 Средства чтения и записи файлов
    • 507 Стандартный ввод/вывод
    • 510 Новый ввод/вывод (nio)
    • 531 Сжатие данных
    • 536 Сериализация объектов
    • 553 Предпочтения
    • 555 Резюме
  • 557 Глава 17. Параллельное выполнение
    • 559 Класс Thread
    • 561 Исполнители
    • 578 Совместное использование ресурсов
    • 598 Взаимодействие между потоками
    • 602 Взаимная блокировка
    • 607 Новые библиотечные компоненты
    • 607 CountDownLatch
    • 609 CyclicBarrier
    • 611 DelayQueue
    • 614 PriorityBlockingQueue
    • 619 Семафоры
    • 623 Exchanger
    • 624 Моделирование
    • 629 Резюме
  • 631 Алфавитный указатель

Инструкция как скачать книгу Эккель Б.: Философия Java. Библиотека программиста в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.
Философия Java. Библиотека программиста
Рейтинг книги:
1 голос
510

Поиск книг:




При поиске учитываются только слова, длина которых больше 3-х символов.

Статистика: