Интернет-портал MegaWEB содержит много ресурсов для веб-мастеров, интернет-разработчиков, веб-дизайнеров и seo-оптимизаторов. Это видеоуроки, книги и справочники в формате ebook: PDF-CHM-DJVU, а также программы и утилиты для того, чтобы сделать сайт или раскрутить сайт в сети Интернет.
Книга «Философия Java»
Версия для печати и PDA
Книга «Философия Java» посвящена проблемам программирования: почему они стали проблемами, и какой подход использует Java в их решении. Поэтому обсуждаемые в каждой главе черты языка неразрывно связаны с тем, как они используются для решения определенных задач. Материал книги изложен в порядке, удобном для изучения и содержит понятные и легко применимые на практике ответы на практически все вопросы. Автор постарался полностью интегрировать усовершенствования Java SE5/6, включить и использовать их во всех рассматриваемых темах. Эта книга, выдержавшая в оригинале не одно переиздание, за глубокое и поистине философское изложение тонкостей языка считается одним из лучших пособий для изучения техники программирования на Java.
Обзор книги «Философия Java»
Введение в объекты: развитие абстракции; объекты и интерфейсы; скрытая реализация, наследование и повторное использование; взаимозаменяемые объекты и полиморфизм; однокорневая иерархия и контейнеры; параметризованные типы; обработка исключений и борьба с ошибками; параллельное выполнение кода.
Все является объектом: ссылки и объекты; создание и удаление объектов; создание новых типов данных; методы, аргументы и возвращаемые значения; ключевое слово static; комментарии и встроенная документация; стиль оформления программ.
Операторы: простые команды печати; операторы Java и литералы.
Управляющие конструкции: синтаксис foreach; особенности команд return, break и continue; нехорошая команда goto.
Инициализация и завершение: конструкторы объектов; перегрузка методов; финализация и сборка мусора; инициализация членов класса; инициализация массивов.
Управление доступом: пакет как библиотечный модуль; спецификаторы доступа Java; интерфейс и реализация; доступ к классам.
Повторное использование классов: синтаксис композиции и наследования; делегирование, сочетание композиции и наследования; композиция в сравнении с наследованием; ключевое слово protected; восходящее преобразование типов; ключевое слово final; инициализация и загрузка классов.
Полиморфизм: конструкторы и полиморфизм; ковариантность возвращаемых типов; разработка классов с наследованием.
Интерфейсы: абстрактные классы и методы, интерфейсы; отделение интерфейса от реализации; расширение интерфейса через наследование; интерфейсы как средство адаптации; вложенные интерфейсы; интерфейсы и фабрики.
Внутренние классы: создание внутренних классов; связь с внешним классом; конструкции this и new; внутренние классы и восходящее преобразование; безымянные внутренние классы; наследование от внутренних классов; локальные внутренние классы.
Коллекции объектов: параметризованные и типизованные контейнеры; добавление групп элементов; итераторы для коллекций; встроенные классы для работы с коллекциями.
Обработка ошибок и исключения: основные исключения и их перехват; создание собственных исключений; спецификации исключений; перехват произвольных исключений; стандартные исключения Java; ограничения при использовании исключений и альтернативные решения; идентификация исключений.
Информация о типах: необходимость в динамическом определении типов RTTI; регистрация фабрик; рефлексия как динамическая информация о классе; объекты с неопределенным состоянием; интерфейсы и информация о типах.
Параметризация: простая параметризация; параметризованные интерфейсы и методы; ограничения и метасимволы.
Массивы: особенности массивов; массив как объект; возврат массива; многомерные массивы; массивы и параметризация; создание массивов с использованием генераторов и вспомогательный инструментарий Arrays.
Система ввода/вывода Java: класс File; добавление атрибутов и интерфейсов; классы Reader и Writer; типичное использование потоков ввода/вывода; средства чтения и записи файлов; стандартный и новый ввод/вывод, nio; сжатие данных; сериализация объектов.
Параллельное выполнение: класс Thread; совместное использование ресурсов; взаимодействие между потоками; библиотечные компоненты CountDownLatch, CyclicBarrier, DelayQueue, PriorityBlockingQueue; блокировка и семафоры; моделирование.
Книга «Философия Java» – это один из лучших учебников для освоения навыков программирования на Java. Издание можно рекомендовать в качестве настольной книги, как опытным программистам, так и новичкам, только начинающим осваивать премудрости языка программирования Java.