Конспект лекций – СПб: Университет ИТМО, 2015. – 126 с.
Данное пособие представляет собой краткий справочник по языку Java и может использоваться как конспект лекционного курса «Программирование Интернет-приложений». Рассмотрены основные концепции объектно-ориентированного программирования, описан синтаксис языка Java, а также приведено описание основных классов и интерфейсов, входящих в стандартную библиотеку с алгоритмами и примерами их использования.
Для подготовки бакалавров по направлениям 230100.62.01 «Вычислительные машины, комплексы, системы и сети», 231000.62.01 «Разработка программно-информационных систем», бакалавров по направлениям 230100.62 «Информатика и вычислительная техника», 231000.62 - «Программная инженерия».
Оглавление
Введение. Основные концепции ООПЯзык программирования Java
Объекты и классы
Конструкторы
Сообщения
Инкапсуляция
Наследование
Полиморфизм
Интерфейсы
Вложенные, локальные и анонимные классы
Принципы проектирования классов
Инструментальные средства JDK 1.8javac
java
javadoc
appletviewer
Интегрированные среды разработки
Синтаксис языка JavaПриложение Hello, World!
Апплет Hello, World!
Класс Applet
Безопасность при работе с апплетами
Лексический разбор исходного кода
Идентификаторы и ключевые слова
Типы данных и литералы
Переменные
Области видимости
Операторы
Управляющие конструкции
Модификаторы
Аннотации
Перечисляемые типы
Использование объектов
Метод finalize()
Стандартная библиотека классовПакеты, входящие в JDK 1.8
Пакет java.lang
Класс Object
Класс Class
Класс System
Класс Math
Классы-оболочки
Автоупаковка и автораспаковка
Класс String
Классы StringBuffer и StringBuilder
Использование String и StringBuffer
Класс java.util.StringTokenizer
Класс Exception
Класс RuntimeException
Класс Error
Множественная обработка исключений
Проброс исключений более узких типов
Выражение try-with-resources
Пакет java.util
Использование легковесных процессовРеализация потока
Состояние потока
Распределение приоритета между потоками
Класс java.lang.ThreadGroup
Методы класса java.lang.Thread
Взаимодействие и синхронизация потоков
Модификатор volatile
Обобщенное программированиеШаблоны
Описание типов с шаблонами
Описание методов с шаблонами
Формальные параметры типа
Шаблоны с групповой подстановкой
КоллекцииИнтерфейс Iterator
Интерфейс Collection
Интерфейсы коллекций
Коллекции общего назначения
Специальные коллекции
Сортировка элементов коллекции
Класс Collections
Лямбда-выражения
Пакет java.util.concurrentИсполнители (Executors)
Очереди (Queues)
Потокобезопасные коллекции (Concurrent Collections)
Синхронизаторы (Synchronizers)
Блокировки (Locks)
Атомарные объекты (Atomic objects)
Работа с потоками ввода-выводаИерархия потоков в Javа
Класс InputStream
Класс OutputSrteam
Класс Reader
Класс Writer
Специализированные потоки
Преобразующие потоки
Стандартные потоки ввода-вывода
Сериализация объектовИнтерфейс java.io.Serializable
Класс java.io.ObjectOutputStream
Класс java.io.ObjectInputStream
Пример сериализации и восстановления объекта
Интерфейс java.io.Externalizable
Контроль версий сериализуемого класса
Основы сетевого взаимодействияРабота с адресами
Передача данных по протоколу TCP
Передача данных по протоколу UDP
Работа с URL-соединениями
Расширенный ввод-выводРабота с буферами
Кодировки символов
Каналы
Файловые каналы
Сетевые каналы
RMI – вызов удаленных методовСтруктура RMI
Определения
Определение удаленных интерфейсов
Создание сервера
Создание клиентов
Запуск каталога, сервера и клиентов
Интернационализация и локализацияИнтернационализация
Локализация
Класс Locale
Класс ResourceBundle
Класс ListResourceBundle
Класс PropertyResourceBundle
Иерархия классов java.text
Класс NumberFormat
Класс DecimalFormat
Класс DecimalFormatSymbols
Класс DateFormat
Класс SimpleDateFormat
Класс DateFormatSymbols
Класс MessageFormat
Класс ChoiceFormat
Класс Collator
Класс RuleBasedCollator
Класс CollationKey
РефлексияКласс Class
Интерфейс Member
Класс Modifier
Класс Field
Класс Method
Класс Constructor
Класс Array