Добавил:
ИВТ (советую зайти в "Несортированное") Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
подгон 2018 (легендарный) / 3 курс -20241122T221211Z-001 / Java / Лабораторные / Основы Java. Лабораторная 4. Новая 1510.doc
Скачиваний:
2
Добавлен:
23.11.2024
Размер:
456.19 Кб
Скачать

Лабораторная работа № 4 Работа с исключениями и коллекциями

Цель работы: получить навыки работы с исключениями и коллекциями (перечислимыми типами) на языке Java.

Продолжительность работы - 4 ч.

Оглавление

Исключения в Java. Теоретические сведения 3

Использование try, catch и throw 4

Пример. Простое использование try, catch и throw в программе «Hallo Java» 4

Использование множественного catch и finally 5

Пример. Использование множественного catch и finally в программе «Hallo Java» 6

Использование ключевого слова throws 6

Пример. Метод saveToFile класса Book 7

Пример. Метод saveToFile класса Book 7

Пример. Метод saveAllToFile класса Books 8

Системные исключения 8

Коллекции (перечислимые типы) в Java. Теоретические сведения. 10

Иерархия интерфейсов коллекций 11

Назначение интерфейсов, расширяющих интерфейс Collection 11

Рабочие классы интерфейса List 12

Массив типа ArrayList 13

Методы класса ArrayList 13

Пример. Работа методов contains и indexOf и перебор элементов ArrayList 14

Массив типа LinkedList 14

Методы класса LinkedList 15

Пример. Перебор элементов коллекции LinkedList 15

Пример. Перебор элементов коллекции LinkedList с использованием for и ListIterator 16

Ассоциативные массивы в Java 17

Диаграмма интерфейса Map 17

Рабочие классы интерфейса Map 18

Пример. Методы работы с элементами Map 20

Пример. Перебор всех элементов ассоциативного массива c приведением к интерфейсу Set 20

Задание 22

Приложение 1. Работа с датой и временем в Java 24

Пример. Вывод текущего времени 24

Пример. Манипуляции с датой: получение текущей, создание новой, проверки 24

Приложение 2. Пример общего класса обработки ошибок, сообщений и логирования. 25

Исключения в Java. Теоретические сведения

Обработку ошибок в Java сразу следует делать правильно т.е. преимущественно с использованием специальных событий-исключений. Исключения это действительно события, потому что при возникновении таких событий т.е. исключительных ситуаций JVM прерывает выполнение алогритма программы и автоматически находит программный код, предназначенный для реагирования на данную ситуацию и выполняет его. Если такого программного кода не обнаружена JVM аварийно завершит программу.

Например, такое аварийное завершение имеет место при обращение к массиву за перелами индекса (тип ошибки ArrayIndexOutOfBoundsException) или деление на ноль (тип ошибки ArithmeticException). Для того, чтобы в этих случаях предотвратить аварийное завершение программы программисту требуется самостоятельно реалибзовать обработку этих ошибок так, как это будет показано далее в примерах.

Второй способ обработки ошибок заключается в возвращении числовых значений — кодов ошибки. Например, если строка пуста, метод возвращает — 0, а если не пуста — 1. В зависимости от значения 0 или 1 выодится соответствующее сообщение об ошибке. Практика, однако, показывает, что последовательное усовершенствование такого подхода для целей достижения универсальности приводит к решению очень похожему на механизм исключений для ошибок требующих прерывания выполнения алгоритма программы. Однако, при валидации данных, когда требуется получить список всех допущенных ошибок, такой метод — применим т.к. исключения не сохраняют историю.

Для работы с исключениями в Java используетися всего 5 ключевых слов: try, catch, throw, throws, finally.