ebook img

Java SE 8. Базовый курс PDF

468 Pages·2017·16.68 MB·Russian
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Java SE 8. Базовый курс

Java SE 8 Описана Java SE 8 Базовый курс Кей 0. Корсшманн Java SE 8 Базовый курс Core Java for tlie Impatient Cay S. Horstmann Upper Saddle River, NJ • Boston • Indianapolis • San Francisco New York • Toronto • Montreal • London • Munich • Paris • Madrid Capetown • Sydney • Tokyo • Singapore • Mexico City Java SE 8 Базовый курс Кеи С. Хорстманн Издательский дом “Вильямс” Москва • Санкт-Петербург • Киев 2015 ББК 32.973.26-018.2.75 Х82 УДК 681.3.07 Издательский дом "Вильямс" Зав. редакцией С.Н. Трип/б Перевод с английского и редакция М.В. Берштейна По общим вопросам обращайтесь в Издательский дом "Вильямс" по адресу: [email protected], http://www.williamspublishing.com Хорстманн, Кей С. Х82 Java SE 8. Базовый курс.: Пер. с англ. — М. : ООО "И.Д. Вильямс", 2015. — 464 с. : ил. — Парал. тит. англ. ISBN 978-5-8459-2004-1 (рус.) ББК 32.973.26-018.2.75 Все названия программных продуктов являются зарегистрированными торговыми марками соответствующих фирм. Никакая часть настоящего издания ни в каких целях не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами, будь то электронные или механические, включая фотокопирование и запись на магнитный носитель, если на это нет письменного разрешения издательства Addison-Wesley Publishing Company, Inc. Authorized translation from the English language edition published by Addison-Wesley Publishing Company, Inc, Copyright © 2015 Pearson Education, Inc. All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from the Publisher. Russian language edition published by Williams Publishing House according to the Agreement with R&I Enterprises International, Copyright © 2015 Научно-популярное издание Кей С. Хорстманн Java SE 8. Базовый курс Литературный редактор ИЛ. Попова Верстка МЛ. Удалое Художественный редактор Е.П. Дынник Корректор Л.А. Гордиенко Подписано в печать 27.08.2015. Формат 70x100/16. Гарнитура Times. Уел. печ. л. 37,41. Уч.-изд. л. 24,4. Тираж 300 экз. Заказ № 4679. Отпечатано способом ролевой струйной печати в АО «Первая Образцовая типография» Филиал «Чеховский Печатный Двор» 142300, Московская область, г. Чехов, ул. Полиграфистов, д.1 ООО "И. Д. Вильямс", 127055, г. Москва, ул. Лесная, д. 43, стр. 1 ISBN 978-5-8459-2004-1 (рус.) © Издательский дом "Вильямс", 2015 ISBN 978-0-321-99632-9 (англ.) © Pearson Education, Inc., 2015 Оглавление ОБ АВТОРЕ 16 ПРЕДИСЛОВИЕ 17 БЛАГОДАРНОСТИ 19 1 ОСНОВОПОЛАГАЮЩИЕ СТРУКТУРЫ ПРОГРАММИРОВАНИЯ 21 2 ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ 71 3 ИНТЕРФЕЙСЫ И ЛЯМБДА-ВЫРАЖЕНИЯ 109 4 НАСЛЕДОВАНИЕ И РЕФЛЕКСИЯ 141 5 ИСКЛЮЧЕНИЯ, УТВЕРЖДЕНИЯ И ПРОТОКОЛИРОВАНИЕ 181 6 ОБОБЩЕННОЕ ПРОГРАММИРОВАНИЕ 205 7 КОЛЛЕ KUH И 231 8 ПОТОКИ ДАННЫХ 253 9 ОРГАНИЗАЦИЯ ВВОДА-ВЫВОДА 279 10 ПАРАЛЛЕЛЬНОЕ ПРОГРАММИРОВАНИЕ 315 11 AHHOTALIHH 359 13 ПРИКЛАДНОЙ ПРОГРАММНЫЙ ИНТЕРФЕЙС API ДАТЫ И ВРЕМЕНИ 381 13 ИНТЕРНАиИОНАЛИЗАиИЯ 399 14 КОМПИЛЯЦИЯ И НАПИСАНИЕ СЦЕНАРИЕВ 421 ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ 447 Содержание ОБ АВТОРЕ 16 ПРЕДИСЛОВИЕ 17 БЛАГОДАРНОСТИ 19 От издательства 20 1 ОСНОВОПОЛАГАЮЩИЕ СТРУКТУРЫ ПРОГРАММИРОВАНИЯ 21 1.1. Первая программа на Java 22 1.1.1. Анализ программы "Hello, World! " 22 1.1.2. Компилирование и выполнение первой программы на Java 24 1.1.3. Вызовы методов 26 1.2. Примитивные типы 27 1.2.1. Целочисленные типы 27 1.2.2. Числовые типы с плавающей точкой 29 1.2.3. Тип char 30 1.2.4. Логический тип 30 1.3. Переменные 30 1.3.1. Объявление переменных 30 1.3.2. Именование переменных 31 1.3.3. Инициализация переменных 31 1.3.4. Константы 32 1.4. Арифметические операции 33 1.4.1. Присваивание 34 1.4.2. Основные арифметические операции 34 1.4.3. Математические методы 35 1.4.4. Преобразования числовых типов 36 1.4.5. Операции отношения и логические операции 38 1.4.6. Большие числа 39 1.5. Символьные строки 40 1.5.1. Сцепление символьных строк 40 1.5.2. Подстроки 41 1.5.3. Сравнение символьных строк 41 1.5.4. Взаимное преобразование чисел и символьных строк 43 1.5.5. Прикладной программный интерфейс API для обработки символьных строк 44 1.5.6. Кодовые точки и кодовые единицы 45 1.6. Ввод-вывод 47 1.6.1. Чтение вводимых данных 47 1.6.2. Форматированный вывод данных 48 1.7. Управляющая логика 50 1.7.1. Условные переходы 50 1.7.2. Циклы 52 1.7.3. Прерывание и продолжение цикла 54 1.7.4. Область действия локальных переменных 56 1.8. Обычные и списочные массивы 57 1.8.1. Обращение с массивами 57 1.8.2. Построение массива 58 1.8.3. Списочные массивы 59 1.8.4. Классы-оболочки для примитивных типов данных 60 1.8.5. Расширенный цикл for 61 1.8.6. Копирование обычных и списочных массивов 61 1.8.7. Алгоритмы обработки массивов 62 1.8.8. Аргументы командной строки 63 1.8.9. Многомерные массивы 64 1.9. Функциональное разложение 66 1.9.1. Объявление и вызов статических методов 66 1.9.2. Массивы параметров и возвращаемые значения 67 1.9.3. Переменное число аргументов 67 Упражнения 68 2 ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ 71 2.1. Обращение с объектами 72 2.1.1. Методы доступа и модифицирующие методы 74 2.1.2. Ссылки на объекты 75 2.2. Реализация классов 77 2.2.1. Переменные экземпляра 77 2.2.2. Заголовки методов 78 2.2.3. Тела методов 78 2.2.4. Вызов методов экземпляра 79 2.2.5. Ссылка this 79 2.2.6. Вызов по значению 80 2.3. Построение объектов 82 2.3.1. Реализация конструкторов 82 2.3.2. Перегрузка 82 2.3.3. Вызов одного конструктора из другого 83 2.3.4. Инициализация по умолчанию 83 2.3.5. Инициализация переменных экземпляра 84 2.3.6. Конечные переменные экземпляра 85 2.3.7. Конструкторы без аргументов 85 2.4. Статические переменные и методы 86 2.4.1. Статические переменные 86 2.4.2. Статические константы 87 2.4.3. Статические блоки инициализации 88 2.4.4. Статические методы 88 2.4.5. Фабричные методы 89 2.5. Пакеты 90 2.5.1. Объявления пакетов 90 2.5.2. Путь к классу 91 2.5.3. Область действия пакетов 93 2.5.4. Импорт классов 94 2.5.5. Статический импорт 95 2.6. Вложенные классы 96 2.6.1. Статические вложенные классы 96 2.6.2. Внутренние классы 98 2.6.3. Правила специального синтаксиса для внутренних классов 100 2.7. Документирующие комментарии 101 2.7.1. Ввод комментариев 101 2.7.2. Комментарии к классам 102 2.7.3. Комментарии к методам 103 2.7.4. Комментарии к переменным 103 2.7.5. Общие комментарии 103 2.7.6. Ссылки 104 2.7.7. Комментарии к пакетам и общие комментарии 105 2.7.8. Извлечение комментариев 105 Упражнения 106 3 ИНТЕРФЕЙСЫ И ЛЯМБДА-ВЫРАЖЕНИЯ 109 3.1. Интерфейсы 110 3.1.1. Объявление интерфейса 111 3.1.2. Реализация интерфейса 112 3.1.3. Преобразование в интерфейсный тип 113 3.1.4. Приведение типов и операция instanceof 113 3.1.5. Расширение интерфейсов 114 3.1.6. Реализация нескольких интерфейсов 115 3.17. Константы 115 3.2. Методы статические и по умолчанию 115 3.2.1. Статические методы 116 3.2.2. Методы по умолчанию 116 3.2.3. Разрешение конфликтов с методами по умолчанию 117 3.3. Примеры интерфейсов 119 3.3.1. Интерфейс Comparable 119 3.3.2. Интерфейс Comparator 120 3.3.3. Интерфейс Runnable 121 3.3.4. Обратные вызовы в пользовательском интерфейсе 122 3.4. Лямбда-выражения 123 3.4.1. Синтаксис лямбда-выражений 123 3.4.2. Функциональные интерфейсы 125 3.5. Ссылки на методы и конструкторы 125 3.5.1. Ссылки на методы 126 3.5.2. Ссылки на конструкторы 127 3.6. Обработка лямбда-выражений 128 3.6.1. Реализация отложенного выполнения 128 3.6.2. Вызов функционального интерфейса 129 3.6.3. Реализация собственных функциональных интерфейсов 131 3.7. Область действия лямбда-выражений и переменных 132 3.7.1. Область дейст вия лямбда-выражения 132 3.7.2. Доступ к переменным из объемлющей области действия 132 3.8. Функции высшего порядка 135 3.8.1. Методы, возвращающие функции 135 3.8.2. Методы, изменяющие функции 136 3.8.3. Методы из интерфейса Comparator 136

Description:
В версии Java SE 8 внедрены значительные усовершенствования, оказывающие влияние на технологии и прикладные программные интерфейсы API, образующие ядро платформы Java. М
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.