Полный спектр сведений о языке Java с примерами и разбором задач от автора учебников-бестселлеров по языкам программирования Алексея Васильева. С помощью этой книги освоить язык Java сможет каждый желающий - от новичка до специалиста.
Language: Russian
Pages: 704
Оглавление
Введение. Программирование на языке Java
Особенности языка Java
Программное обеспечение
Среда разработки NetBeans
Создание нового проекта
Компиляция и запуск программы на выполнение
Закрытие проекта
Открытие существующего проекта
О книге
Обратная связь с автором
Глава 1. Приступаем к программированию
Первая программа
Создание программы
Анализ программного кода
Общие замечания
Вариации на тему первой программы
Вывод в консольное окно
Окно с полем ввода
Создание окна с полем ввода
Анализ программного кода
Управление видом окна с полем ввода
Консольный ввод
Резюме
Глава 2. Базовые типы и основные операторы
Переменные
Базовые типы
Объявление и инициализация переменных
Считывание значения переменной
Литералы и управляющие символы
Приведение типов
Основные операторы
Арифметические операторы
Операторы сравнения
Логические операторы
Побитовые операторы
Тернарный оператор
Оператор присваивания
Сокращенные формы оператора присваивания
Резюме
Глава 3. Знакомство с классами и объектами
Классы и объекты
Описание класса с полями
Создание объекта
Использование объектов
Класс с методами
Методы и конструкторы
Перегрузка методов
Конструктор
Статические и закрытые члены класса
Статические поля и методы
Закрытые и открытые члены класса
Резюме
Глава 4. Управляющие инструкции
Условный оператор
Синтаксис условного оператора
Использование условного оператора
Вложенные условные операторы
Операторы цикла
Оператор цикла while
Оператор цикла do-while
Оператор цикла for
Сравнение операторов цикла
Оператор выбора
Резюме
Глава 5. Массивы
Одномерные массивы
Создание одномерного массива
Инициализация одномерного массива
Оператор цикла for по коллекции
Присваивание массивов
Двумерные массивы
Создание двумерного массива
Инициализация двумерного массива
Массив со строками разной длины
Массивы и методы
Резюме
Глава 6. Наследование
Реализация наследования
Создание подкласса
Конструктор подкласса
Наследование и закрытые члены
Наследование, пакеты и уровни доступа
Переопределение методов
Общие принципы переопределения методов
Вызов разных версий метода
Виртуальность методов и конструкторов
Перегрузка и переопределение методов
Метод toString()
Объект подкласса и переменная суперкласса
Резюме
Глава 7. Абстрактные классы и интерфейсы
Абстрактные классы и методы
Интерфейсы
Реализация интерфейса
Интерфейсные переменные
Методы с кодом по умолчанию
Расширение интерфейсов
Наследование классов и реализация интерфейсов
Резюме
Глава 8. Использование классов и объектов
Методы и объекты
Механизм передачи аргументов методам
Передача аргументом объекта
Объект как результат метода
Объекты и наследование
Фабрика объектов
Конструктор создания копии
Массивы и объекты
Массив как поле
Массив объектов
Цепочка объектов
Внутренние классы
Анонимные классы
Создание анонимного класса путем наследования абстрактного суперкласса
Создание анонимного класса через реализацию интерфейса
Резюме
Глава 9. Обобщенные типы данных
Знакомство с обобщенными классами
Общие принципы использования обобщенных классов
Пример создания обобщенного класса
Обобщенный класс с несколькими параметрами
Обобщенные методы
Создание статического обобщенного метода
Создание нестатического обобщенного метода
Обобщенные классы и наследование
Суперкласс на основе обобщенного класса
Ограничение наследования для обобщенного типа
Обобщенные интерфейсы
Создание обобщенного класса на основе интерфейса
Создание обычного класса на основе обобщенного интерфейса
Обобщенные подстановки
Знакомство с обобщенными подстановками
Обобщенные подстановки с ограничениями
Резюме
Глава 10. Лямбда-выражения
Знакомство с лямбда-выражениями
Синтаксис лямбда-выражения
Функциональные интерфейсы
Альтернативный подход
Несколько интерфейсов и ссылка на метод
Ссылка на метод и конструктор
Ссылка на метод объекта
Ссылка на нестатический метод класса
Ссылка на статический метод
Ссылка на конструктор
Ссылка на перегруженный метод
Использование лямбда-выражений
Передача лямбда-выражения аргументом методу
Лямбда-выражение и результат метода
Лямбда-выражение и поле объекта
Резюме
Глава 11. Обработка исключительных ситуаций
Перехват и обработка ошибок
Пример обработки исключения
Принципы обработки исключений
Вложенные try-catch блоки
Использование объекта исключения
Генерирование исключений
Контролируемые и неконтролируемые исключения
Создание пользовательских классов исключений
Резюме
Глава 12. Многопоточное программирование
Знакомство с потоками
Способы создания дочерних потоков
Явная реализация интерфейса Runnable
Создание потока с использованием анонимного класса
Создание потока с использованием лямбда-выражения
Наследование класса Thread
Работа с потоками
Главный поток
Методы для работы с потоками
Создание нескольких потоков
Создание демон-потока
Синхронизация потоков
Резюме
Глава 13. Приложения с графическим интерфейсом
Принципы создания приложений с интерфейсом
Создание окна
Пустое окно
Альтернативный способ создания окна
Окно с кнопкой
Явное использование объекта обработчика
Принципы обработки событий
Обработчик на основе анонимного класса
Обработчик на основе лямбда-выражения
Обработчик на основе объекта окна
Создание класса для кнопки
Резюме
Глава 14. Обработка событий
Классы компонентов и событий
Классы графических компонентов
Классы событий
Использование текстового поля
Считывание значения поля
Использование общего обработчика
Обработчик для поля
Классы-адаптеры
Основные классы-адаптеры
Использование классов-адаптеров
Резюме
Глава 15. Графические компоненты
Раскрывающийся список
Список выбора
Группа переключателей
Опции и другие элементы
Резюме
Глава 16. Меню и панель инструментов
Меню и панель инструментов
Использование меню
Панель инструментов
Менеджеры компоновки и текстовая панель
Менеджеры компоновки
Текстовая панель
Использование меню и панели инструментов
Постановка задачи
Анализ возможностей программы
Программный код примера
Анализ программного кода
Резюме
Глава 17. Апплеты
Знакомство с апплетами
Общие принципы реализации апплета
Добавление апплета в веб-документ
Программный код апплета
Компиляция файла
Настройки безопасности
Апплеты и обработка событий
Пример обработки событий в апплете
Передача апплету параметров
Апплет с элементами управления
Резюме
Глава 18. Файлы и аргументы командной строки
Аргументы командной строки
Работа с файлами
Получение информации о файле
Чтение из файла и запись в файл
Средства выбора файлов
Резюме
Заключение. Еще немного о Java
Предметный указатель