وبلاگ بلیان

Основы Java.

معرفی کتاب «Основы Java.» نوشتهٔ Прохоренок Н. А.، منتشرشده توسط نشر БХВ-Петербург در سال 2017. این کتاب در 8 صفحه، فرمت pdf، زبان ru ارائه شده است. «Основы Java.» در دستهٔ بدون دسته‌بندی قرار دارد.

Описан базовый синтаксис языка Java: типы данных, операторы, условия, циклы, регулярные выражения, объектно-ориентированное программирование. Рассмот- рены основные классы стандартной библиотеки, получение данных из Интернета, работа с базой данных MySQL. Приводится описание большинства нововведений: Date API, Stream API, лямбда-выражения, ссылки на методы, функциональные ин- терфейсы и др. Книга содержит большое количество практических примеров, по- могающих начать программировать на языке Java самостоятельно. Весь материал тщательно подобран, хорошо структурирован и компактно изложен, что позволяет использовать книгу как удобный справочник. Электронный архив с примерами на- ходится на сайте издательства. Для программистов Оглавление Введение Глава 1. Первые шаги 1.1. Установка Java SE Development Kit (JDK) 1.2. Первая программа 1.3. Установка и настройка редактора Eclipse 1.4. Структура программы 1.5. Комментарии в программе 1.6. Вывод данных 1.7. Ввод данных 1.8. Получение данных из командной строки 1.9. Преждевременное завершение выполнения программы Глава 2. Переменные и типы данных 2.1. Объявление переменной внутри метода 2.2. Именование переменных 2.3. Типы данных 2.4. Инициализация переменных 2.5. Константы 2.6. Статические переменные и константы класса 2.7. Области видимости переменных 2.8. Преобразование и приведение типов 2.9. Перечисления Глава 3. Операторы и циклы 3.1. Математические операторы 3.2. Побитовые операторы 3.3. Операторы присваивания 3.4. Операторы сравнения 3.5. Приоритет выполнения операторов 3.6. Оператор ветвления if 3.7. Оператор ?: 3.8. Оператор выбора switch 3.9. Цикл for 3.10. Цикл "for each" 3.11. Цикл while 3.12. Цикл do...while 3.13. Оператор continue: переход на следующую итерацию цикла 3.14. Оператор break: прерывание цикла Глава 4. Числа 4.1. Математические константы 4.2. Основные методы для работы с числами 4.3. Округление чисел 4.4. Тригонометрические методы 4.5. Преобразование строки в число 4.6. Преобразование числа в строку 4.7. Генерация псевдослучайных чисел 4.8. Бесконечность и значение NaN Глава 5. Массивы 5.1. Объявление и инициализация массива 5.2. Определение размера массива 5.3. Получение и изменение значения элемента массива 5.4. Перебор элементов массива 5.5. Многомерные массивы 5.6. Поиск минимального и максимального значения 5.7. Заполнение массива значениями 5.8. Сортировка массива 5.9. Проверка наличия значения в массиве 5.10. Переворачивание и перемешивание массива 5.11. Заполнение массива случайными числами 5.12. Копирование элементов из одного массива в другой 5.13. Сравнение массивов 5.14. Преобразование массива в строку Глава 6. Символы и строки 6.1. Объявление и инициализация отдельного символа 6.2. Создание строки 6.3. Определение длины строки 6.4. Доступ к отдельным символам 6.5. Получение фрагмента строки 6.6. Конкатенация строк 6.7. Настройка локали 6.8. Изменение регистра символов 6.9. Сравнение строк 6.10. Поиск и замена в строке 6.11. Преобразование строки в массив и обратно 6.12. Преобразование кодировок 6.13. Форматирование строки Глава 7. Регулярные выражения 7.1. Создание шаблона и проверка полного соответствия шаблону 7.2. Модификаторы 7.3. Синтаксис регулярных выражений 7.4. Поиск всех совпадений с шаблоном 7.5. Замена в строке 7.6. Метод split() Глава 8. Работа с датой и временем (классический способ) 8.1. Класс Date 8.1.1. Создание экземпляра класса Date 8.1.2. Форматирование даты и времени 8.2. Класс Calendar 8.2.1. Метод getInstance() 8.2.2. Получение компонентов даты и времени 8.2.3. Установка компонентов даты и времени 8.2.4. Сравнение объектов 8.3. Класс GregorianCalendar 8.3.1. Создание экземпляра класса GregorianCalendar 8.3.2. Установка и получение компонентов даты и времени 8.3.3. Изменение компонентов даты и времени 8.3.4. Сравнение объектов 8.4. Класс SimpleDateFormat: форматирование даты и времени 8.5. Класс DateFormatSymbols 8.6. «Засыпание» программы и измерение времени выполнения Глава 9. Работа с датой и временем в Java SE 8 9.1. Класс LocalDate: дата 9.1.1. Создание экземпляра класса LocalDate 9.1.2. Установка и получение компонентов даты 9.1.3. Прибавление и вычитание значений 9.1.4. Преобразование объекта класса LocalDate в объект класса LocalDateTime 9.1.5. Сравнение объектов 9.1.6. Преобразование даты в строку 9.1.7. Создание календаря на месяц и год 9.2. Класс LocalTime: время 9.2.1. Создание экземпляра класса LocalTime 9.2.2. Установка и получение компонентов времени 9.2.3. Прибавление и вычитание значений 9.2.4. Преобразование объекта класса LocalTime в объект класса LocalDateTime 9.2.5. Сравнение объектов 9.2.6. Преобразование времени в строку 9.3. Класс LocalDateTime: дата и время 9.3.1. Создание экземпляра класса LocalDateTime 9.3.2. Установка и получение компонентов даты и времени 9.3.3. Прибавление и вычитание значений 9.3.4. Сравнение объектов 9.3.5. Преобразование даты и времени в строку 9.4. Класс Instant 9.4.1. Создание экземпляра класса Instant 9.4.2. Получение компонентов времени 9.4.3. Прибавление и вычитание значений 9.4.4. Сравнение объектов 9.4.5. Преобразование объекта класса Instant в объект класса LocalDateTime 9.5. Класс DateTimeFormatter: форматирование даты и времени 9.5.1. Создание экземпляра класса DateTimeFormatter 9.5.2. Специальные символы в строке шаблона 9.6. Класс Period: разница между двумя датами 9.7. Получение количества дней между двумя датами 9.8. Получение времени в разных часовых поясах Глава 10. Пользовательские методы 10.1. Создание статического метода 10.2. Вызов статического метода 10.3. Перегрузка методов 10.4. Способы передачи параметров в метод 10.5. Передача и возвращение массивов 10.6. Передача произвольного количества значений 10.7. Рекурсия Глава 11. Объектно-ориентированное программирование 11.1. Основные понятия 11.2. Создание класса и экземпляра класса 11.3. Объявление полей внутри класса 11.4. Определение методов внутри класса 11.5. Конструкторы класса 11.6. Явная инициализация полей класса 11.7. Инициализационные блоки 11.8. Вызов одного конструктора из другого 11.9. Создание констант класса 11.10. Статические члены класса 11.11. Методы-фабрики 11.12. Наследование 11.13. Переопределение методов базового класса 11.14. Финальные классы и методы 11.15. Абстрактные классы и методы 11.16. Вложенные классы 11.16.1. Обычные вложенные классы 11.16.2. Статические вложенные классы 11.16.3. Локальные вложенные классы 11.16.4. Анонимные вложенные классы 11.17. Приведение типов 11.18. Класс Object 11.19. Массивы объектов 11.20. Передача объектов в метод и возврат объектов 11.21. Классы-«обертки» над элементарными типами Глава 12. Интерфейсы 12.1. Создание интерфейса 12.2. Реализация нескольких интерфейсов 12.3. Расширение интерфейсов 12.4. Создание статических констант внутри интерфейса 12.5. Создание статических методов внутри интерфейса 12.6. Методы по умолчанию внутри интерфейса 12.7. Интерфейсы и обратный вызов 12.8. Функциональные интерфейсы и лямбда-выражения 12.9. Область видимости лямбда-выражений 12.10. Ссылки на методы 12.11. Интерфейс Comparable 12.12. Интерфейс Cloneable Глава 13. Обобщенные типы 13.1. Зачем нужны обобщенные типы 13.2. Обобщенные классы 13.3. Ограничение обобщенного типа 13.4. Обобщенные методы 13.5. Маски типов 13.6. Наследование обобщенных классов 13.7. Обобщенные интерфейсы 13.8. Ограничения на использование обобщенных типов Глава 14. Коллекции. Списки и очереди 14.1. Интерфейс Collection 14.2. Интерфейсы Iterable и Iterator 14.3. Интерфейсы Comparable и Comparator 14.4. Интерфейс List 14.5. Класс ArrayList : динамический список 14.5.1. Создание объекта 14.5.2. Вставка элементов 14.5.3. Определение количества элементов 14.5.4. Удаление элементов 14.5.5. Доступ к элементам 14.5.6. Поиск и замена элементов в списке 14.5.7. Поиск минимального и максимального значения в списке 14.5.8. Преобразование массива в список и списка в массив 14.5.9. Перемешивание и переворачивание списка 14.5.10. Сортировка элементов списка 14.5.11. Перебор элементов списка 14.5.12. Интерфейс ListIterator 14.6. Интерфейсы Queue и Deque 14.7. Класс ArrayDeque : двухсторонняя очередь 14.7.1. Создание объекта 14.7.2. Вставка элементов 14.7.3. Определение количества элементов 14.7.4. Удаление элементов 14.7.5. Получение элементов из очереди 14.7.6. Проверка существования элементов в очереди 14.7.7. Поиск минимального и максимального значения в очереди 14.7.8. Преобразование массива в очередь и очереди в массив 14.7.9. Перебор элементов очереди 14.8. Класс PriorityQueue : очередь с приоритетами 14.9. Класс LinkedList : связанный список и очередь 14.10. Класс Vector : синхронизированный динамический список 14.10.1. Создание объекта 14.10.2. Методы класса Vector 14.10.3. Интерфейс Enumeration 14.11. Класс Stack : стек 14.12. Класс BitSet: набор битов Глава 15. Коллекции. Множества и словари 15.1. Интерфейс Set 15.2. Класс HashSet : множество 15.2.1. Создание объекта 15.2.2. Вставка элементов 15.2.3. Определение количества элементов 15.2.4. Удаление элементов 15.2.5. Проверка существования элементов 15.2.6. Преобразование массива во множество и множества в массив 15.2.7. Перебор элементов множества 15.3. Класс LinkedHashSet 15.4. Интерфейсы SortedSet и NavigableSet 15.5. Класс TreeSet 15.5.1. Создание объекта 15.5.2. Методы из интерфейса SortedSet 15.5.3. Методы из интерфейса NavigableSet 15.6. Интерфейс Map 15.7. Класс HashMap : словарь 15.7.1. Создание объекта 15.7.2. Вставка элементов 15.7.3. Определение количества элементов 15.7.4. Удаление элементов 15.7.5. Доступ к элементам 15.7.6. Изменение значений элементов 15.7.7. Проверка существования элементов 15.7.8. Перебор элементов словаря 15.8. Класс LinkedHashMap 15.9. Интерфейсы SortedMap и NavigableMap 15.10. Класс TreeMap 15.10.1. Создание объекта 15.10.2. Методы из интерфейса SortedMap 15.10.3. Методы из интерфейса NavigableMap 15.11. Класс Hashtable 15.12. Класс Properties Глава 16. Пакеты и JAR-архивы 16.1. Инструкция import 16.2. Импорт статических членов класса 16.3. Инструкция package 16.4. Пути поиска классов 16.5. JAR-архивы 16.5.1. Создание JAR-архива 16.5.2. Исполняемые JAR-архивы 16.5.3. Редактирование JAR-архивов 16.5.4. Создание JAR-архива в редакторе Eclipse Глава 17. Обработка ошибок 17.1. Типы ошибок 17.2. Инструкция try...catch...finally 17.3. Оператор throw: генерация исключений 17.4. Иерархия классов исключений 17.5. Типы исключений 17.6. Пользовательские классы исключений 17.7. Способы поиска ошибок в программе 17.8. Протоколирование 17.9. Инструкция assert 17.10. Отладка программы в редакторе Eclipse Глава 18. Работа с файлами и каталогами 18.1. Класс File 18.1.1. Создание объекта 18.1.2. Преобразование пути к файлу или каталогу 18.1.3. Работа с дисками 18.1.4. Работа с каталогами 18.1.5. Работа с файлами 18.1.6. Права доступа к файлам и каталогам 18.2. Класс Files 18.2.1. Класс Paths и интерфейс Path 18.2.2. Работа с дисками 18.2.3. Работа с каталогами 18.2.4. Обход дерева каталогов 18.2.5. Работа с файлами 18.2.6. Права доступа к файлам и каталогам 18.2.7. Атрибуты файлов и каталогов 18.2.8. Копирование и перемещение файлов и каталогов 18.2.9. Чтение и запись файлов 18.3. Получение сведений об операционной системе Глава 19. Байтовые потоки ввода/вывода 19.1. Базовые классы байтовых потоков ввода/вывода 19.1.1. Класс OutputStream 19.1.2. Класс FileOutputStream 19.1.3. Класс InputStream 19.1.4. Класс FileInputStream 19.2. Интерфейс AutoCloseable и инструкция try-with-resources 19.3. Буферизованные байтовые потоки 19.3.1. Класс BufferedOutputStream 19.3.2. Класс BufferedInputStream 19.4. Класс PushbackInputStream 19.5. Запись и чтение двоичных данных 19.5.1. Класс DataOutputStream 19.5.2. Интерфейс DataOutput 19.5.3. Класс DataInputStream 19.5.4. Интерфейс DataInput 19.6. Сериализация объектов 19.6.1. Класс ObjectOutputStream 19.6.2. Интерфейс ObjectOutput 19.6.3. Класс ObjectInputStream 19.6.4. Интерфейс ObjectInput 19.7. Файлы с произвольным доступом Глава 20. Символьные потоки ввода/вывода 20.1. Базовые классы символьных потоков ввода/вывода 20.1.1. Класс Writer 20.1.2. Класс OutputStreamWriter 20.1.3. Класс Reader 20.1.4. Класс InputStreamReader 20.2. Буферизованные символьные потоки ввода/вывода 20.2.1. Класс BufferedWriter 20.2.2. Класс BufferedReader 20.3. Класс PushbackReader 20.4. Классы PrintWriter и PrintStream 20.4.1. Класс PrintWriter 20.4.2. Класс PrintStream 20.4.3. Перенаправление стандартных потоков вывода 20.5. Класс Scanner 20.6. Класс Console Глава 21. Работа с потоками данных: Stream API 21.1. Создание потока данных 21.1.1. Создание потока из коллекции 21.1.2. Создание потока из массива или списка значений 21.1.3. Создание потока из строки 21.1.4. Создание потока из файла или каталога 21.1.5. Создание потока с помощью итератора или генератора 21.1.6. Создание потока случайных чисел 21.1.7. Создание пустого потока 21.2. Промежуточные операции 21.2.1. Основные методы 21.2.2. Преобразование типа потока 21.2.3. Объединение и добавление потоков 21.3. Терминальные операции 21.3.1. Основные методы 21.3.2. Класс Optional 21.3.3. Преобразование потока в коллекцию, массив или в другой объект Глава 22. Получение данных из сети Интернет 22.1. Класс URI 22.2. Класс URL 22.2.1. Разбор URL-адреса 22.2.2. Кодирование и декодирование строки запроса 22.2.3. Получение данных из сети Интернет 22.3. Классы URLConnection и HttpURLConnection 22.3.1. Установка тайм-аута 22.3.2. Получение заголовков ответа сервера 22.3.3. Отправка заголовков запроса 22.3.4. Отправка запроса методом GET 22.3.5. Отправка запроса методом POST 22.3.6. Отправка файла методом POST 22.3.7. Обработка перенаправлений 22.3.8. Обработка кодов ошибок Глава 23. Работа с базой данных MySQL 23.1. Установка JDBC-драйвера 23.2. Регистрация драйвера и подключение к базе данных 23.3. Создание базы данных 23.4. Создание таблицы 23.5. Добавление записей 23.6. Обновление и удаление записей 23.7. Получение записей 23.8. Метод execute() 23.9. Получение информации о структуре набора ResultSet 23.10. Транзакции 23.11. Получение информации об ошибках Глава 24. Многопоточные приложения 24.1. Создание и прерывание потока 24.2. Потоки-демоны 24.3. Состояния потоков 24.4. Приоритеты потоков 24.5. Метод join() 24.6. Синхронизация 24.6.1. Ключевое слово volatile 24.6.2. Ключевое слово synchronized 24.6.3. Синхронизированные блоки 24.6.4. Методы wait(), notify() и notifyAll() 24.7. Пакет java.util.concurrent.locks 24.7.1. Интерфейс Lock 24.7.2. Интерфейс Condition 24.8. Пакет java.util.concurrent 24.8.1. Интерфейс BlockingQueue : блокирующая односторонняя очередь 24.8.2. Интерфейс BlockingDeque : блокирующая двухсторонняя очередь 24.8.3. Класс PriorityBlockingQueue : блокирующая очередь с приоритетами 24.8.4. Интерфейсы Callable и Future 24.8.5. Пулы потоков 24.9. Синхронизация коллекций Заключение Приложение. Описание электронного архива Предметный указатель
دانلود کتاب Основы Java.