Брюс Эккель - Философия Java3
- Категория: Разная литература / Прочее
- Автор: Брюс Эккель
- Год выпуска: неизвестен
- ISBN: нет данных
- Издательство: неизвестно
- Страниц: 132
- Добавлено: 2019-05-13 12:44:30
Брюс Эккель - Философия Java3 краткое содержание
Прочтите описание перед тем, как прочитать онлайн книгу «Брюс Эккель - Философия Java3» бесплатно полную версию:Брюс Эккель - Философия Java3 читать онлайн бесплатно
БИБЛИОТЕКА ПРОГРАММИСТА
Брюс Эккель
4-е издание
{^ППТЕР
Москва - Санкт-Петербург - Нижний Новгород - Воронеж Ростов-на-Дону - Екатеринбург - Самара - Новосибирск Киев - Харьков - Минск
2009
ББК 32.973 2-018.1
УДК 004.3
Э38
Эккель Б.
Э38 Философия Java. Библиотека программиста. 4-е изд. — СПб.: Питер, 2009. — 640 е.: ил. — (Серия «Библиотека программиста»).
ISBN 978-5-388-00003-3
Java нельзя понять, взглянув на него только как на коллекцию некоторых харакюриешк, - необходимо понять задачи этого языка как частные задачи программирования в целом. r3ia книга — о проблемах программирования: почему они стали проблемами и какой подход использует Java в их решении. Поэтому обсуждаемые в каждой главе черты языка неразрывно связаны с тем, как они используются для решения определенных задач.
Эта книга, выдержавшая в оригинале не одно переиздание, благодаря глубокому и поистине философскому изложению тонкостей языка считается одним из лучших пособий для программирующих на Java.
ББК 32.973.2-018.1 УДК 004.3
Права на издание получены по соглашению с Prentice Hall PTR.
Все права защищены. Никакая часть данной книги не может быть воспроизведена в какой бы то ни было форме без письменного разрешения владельцев авторских прав.
Информация, содержащаяся в данной книге, получена из источников, рассматриваемых издательством как надежные. Тем не менее, имея в виду возможные человеческие или технические ошибки, издательство не может гарантировать абсолютную точность и полноту приводимых сведений и не несет ответственности за возможные ошибки, связанные с использованием книги.
ISBN 978-0131872486 (англ ) © Prentice Hall PTR, 2006
ISBN 978-5-388-00003-3 ...............................14
Благодарности................................14
Глава 1. Введение в объекты....................17
Развитие абстракции........ ...................18
Объект имеет интерфейс..........................20
Объект предоставляет услуги........................22
Скрытая реализация.............................23
Повторное использование реализации....................24
Наследование................................25
Взаимозаменяемые объекты и полиморфизм.................29
Однокорневая иерархия...........................33
Контейнеры.................................33
Параметризованные типы..........................35
Создание, использование объектов и время их жизни............36
Обработка исключений: борьба с ошибками.................38
Параллельное выполнение.........................38
Java и Интернет...............................39
Резюме...................................47
Глава 2. Все является объектом..................48
Для работы с объектами используются ссылки................48
Все объекты должны создаваться явно...................49
Объекты никогда не приходится удалять..................53
Создание новых типов данных.........................54
Методы, аргументы и возвращаемые значения...............56
Создание программы на Java........................58
Ключевое слово static............................60
Наша первая программа на Java.......................61
Комментарии и встроенная документация..................64
Стиль оформления программ........................70
Резюме...................................70
Глава 3. Операторы........................71
Простые команды печати..........................71
Операторы Java...............................72
Литералы..................................82
В Java отсутствует sizeof()..........................92
Резюме...................................100
Глава 4. Управляющие конструкции................101
Синтаксис foreach.............................105
return, ...................................107
break и continue..............................108
Нехорошая команда goto..........................109
Резюме...................................115
Глава 5. Инициализация и завершение..............116
Конструктор гарантирует инициализацию.................116
Перегрузка методов............................118
Очистка: финализация и сборка мусора..................130
Инициализация членов класса.......................137
Инициализация конструктором.......................140
Инициализация массивов..........................146
Резюме...................................151
Глава 6. Управление доступом...................152
Пакет как библиотечный модуль......................153
Спецификаторы доступа Java........................159
Интерфейс и реализация..........................163
Доступ к классам..............................164
Резюме...................................167
Глава 7. Повторное использование классов............169
Синтаксис композиции...........................170
Синтаксис наследования..........................172
Делегирование...............................176
Сочетание композиции и наследования...................178
Композиция в сравнении с наследованием.................184
protected..................................185
Восходящее преобразование типов.....................186
Ключевое слово final............................188
Инициализация и загрузка классов.....................195
Резюме...................................197
Глава 8. Полиморфизм......................198
Снова о восходящем преобразовании. . . >................199
Особенности................................201
Конструкторы и полиморфизм.......................208
Ковариантность возвращаемых типов...................216
Разработка с наследованием........................217
Резюме...................................220
Глава 9. Интерфейсы.......................221
Абстрактные классы и методы.......................221
Интерфейсы................................224
Отделение интерфейса от реализации...................227
Расширение интерфейса через наследование...............233
Интерфейсы как средство адаптации....................236
Вложенные интерфейсы..........................239
Интерфейсы и фабрики...........................242
Резюме...................................244
Глава 10. Внутренние классы...................245
Создание внутренних классов.......................245
Связь с внешним классом..........................246
Конструкции .this и .new..........................248
Внутренние классы и восходящее преобразование.............249
Безымянные внутренние классы......................253
Внутренние классы: зачем?.........................261
Наследование от внутренних классов....................272
Можно ли переопределить внутренний класс?...............272
Локальные внутренние классы.......................274
Резюме...................................276
Глава 11. Коллекции объектов...................277
Параметризованные и типизованные контейнеры.............277
Основные концепции............................280
Добавление групп элементов........................281
List.....................................285
Итераторы.................................288
LinkedList..................................291
Стек....................................292
Множество.................................294
Карта....................................296
Очередь..................................298
PriorityQueue................................299
Collection и Iterator.............................301
Идиома «метод-адаптер»..........................306
Резюме...................................309
Глава 12. Обработка ошибок и исключения............310
Основные исключения...........................310
Перехват исключений...........................312
Создание собственных исключений.....................314
Спецификации исключений.........................319
Перехват произвольных исключений....................320
Стандартные исключения Java.......................328
Завершение с помощью finally.......................330
Использование finally с return........................334
Ограничения при использовании исключений...............336
Конструкторы...............................339
Идентификация исключений........................343
Альтернативные решения.........................344
Резюме...................................351
Глава 13. Информация о типах..................352
Необходимость в динамическом определении типов (RTTI).........352
Регистрация фабрик............................372
Рефлексия: динамическая информация о классе..............376
Динамические посредники.........................380
Объекты с неопределенным состоянием..................384
Интерфейсы и информация о типах....................390
Резюме...................................394
Глава 14. Параметризация.....................397
Простая параметризация..........................398
Параметризованные интерфейсы......................404
Параметризованные методы........................407
Построение сложных моделей.......................419
Ограничения................................437
Метасимволы................................440
Резюме...................................452
Глава 15. Массивы........................454
Особенности массивов...........................454
Массив как объект.............................456
Возврат массива..............................458
Многомерные массивы...........................460
Массивы и параметризация.........................463
Создание тестовых данных.........................465
Создание массивов с использованием генераторов.............470
Вспомогательный инструментарий Arrays..................474
Резюме...................................482
Глава 16. Система ввода/вывода Java...............483
Класс File..................................484
Ввод и вывод................................489
Добавление атрибутов и интерфейсов...................491
Классы Reader и Writer...........................494
RandomAccessFile: сам по себе.......................497
Типичное использование потоков ввода/вывода..............498
Средства чтения и записи файлов.....................505
Жалоба
Напишите нам, и мы в срочном порядке примем меры.