Главная страница
Навигация по странице:

  • Цель работы: Знакомство с механизмом обработки исключений в языке Java.Задача

  • Перечень ситуаций, которые контролируются с помощью исключений

  • Исходные тексты классов собственных исключений, методов, где генерируются и обрабатываются исключительные ситуации

  • Обработка исключений


    Скачать 280.52 Kb.
    НазваниеОбработка исключений
    Дата08.03.2023
    Размер280.52 Kb.
    Формат файлаdocx
    Имя файла1308.LR5.docx
    ТипОтчет
    #974607

    МИНОБРНАУКИ РОССИИ

    Санкт-Петербургский государственный

    электротехнический университет

    «ЛЭТИ» им. В.И. Ульянова (Ленина)

    Кафедра ВТ


    отчет

    по лабораторной работе №5

    по дисциплине «Объектно-ориентированное программирование»

    Тема: Обработка исключений



    Студент гр. 1308




    Мальцев А.П.

    Преподаватель




    Гречухин М.Н.


    Санкт-Петербург

    2023

    Цель работы:

    Знакомство с механизмом обработки исключений в языке Java.
    Задача:

    Задайте спецификацию исключений. Напишите 1-2 класса собственных исключений. Разработайте код методов, где контролируются и обрабатываются исключительные ситуации.
    Перечень ситуаций, которые контролируются с помощью исключений:

    Если при нажатии кнопки “Поиск” в search_field находится изначальная строка вызывается ошибка MyExceptionSearch и выводится диалоговое окно с надписью “Вы не ввели название отеля для поиска”.



    Рисунок 1 Ошибка "Не ввели название отеля"

    Если при нажатии кнопки “Поиск” в search_field находится пустая строка вызывается ошибка NullPointerException и выводится диалоговое окно с надписью ошибки.



    Рисунок 2 Ошибка «Пустая строка»
    Если попытаться удалить строчку в пустой таблице вызывается ошибка MyExceptionDelete и выводится диалоговое окно с надписью “ Таблица пуста! Нельзя больше удалять.”.



    Рисунок 3 Ошибка "Удаление строки пустой таблицы"



    Рисунок 4 Javadoc ошибки удаления строки в пустой таблице



    Рисунок 5 Javadoc ошибки поиска пустой строки

    Исходные тексты классов собственных исключений, методов, где

    генерируются и обрабатываются исключительные ситуации:
    /**

    * Класс ошибки выводящий диалоговое окно при неверном поиске отеля

    * @author Артем Мальцев

    *

    */

    private class MyExceptionSearch extends Exception {

    /**

    * Ошибка пользователь не ввел название

    */

    public MyExceptionSearch() {

    super ("Вы не ввели название отеля для поиска");

    }

    }

    /**

    * Класс ошибки выводящий диалоговое окно при удалении при пустой таблице

    * @author Артем Мальцев

    *

    */

    private class MyExceptionDelete extends Exception {

    /**

    * Ошибка пустая таблица

    */

    public MyExceptionDelete() {

    super ("Таблица пуста! Нельзя больше удалять.");

    }

    }

    /**

    * Функция-проверка на корректный поиск

    * @param bName текстовое поле для проверки

    * @throws MyExceptionSearch

    * @throws NullPointerException

    */

    private void checkName (JTextField bName) throws MyExceptionSearch,NullPointerException

    {

    String sName = bName.getText();

    if (sName.contains("Название отеля")) throw new MyExceptionSearch();

    if (sName.length() == 0) throw new NullPointerException();

    }

    /**

    * Функция-проверка на корректное удалене строчек таблицы

    * @param bTable таблица для удаления

    * @throws MyExceptionDelete

    */

    private void deleteTable (JTable bTable) throws MyExceptionDelete

    {

    int iRow = bTable.getRowCount();

    if (iRow == 0) throw new MyExceptionDelete();

    ((DefaultTableModel)bTable.getModel()).removeRow(0);

    }


    написать администратору сайта