JavaRush
AI Academy
Акция
Университет
Java FullStack
Python FullStack
AI Native Developer
new
Web FullStack
Обучение
Курсы
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема
Вопрос
  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Все вопросы
JavaRush/Помощь по Java задачам/Я заебался ,помогите пожалуйста
NEXON
22 уровень
  • 27.09.2019
  • 1433просмотров
  • 2комментариев

Я заебался ,помогите пожалуйста

Вопрос по задаче Перехват выборочных исключений
Java Syntax,  9 уровень,  8 лекция
Решен


1. Разберись, какие исключения бросает метод BEAN.methodThrowExceptions.
2. Метод handleExceptions должен вызывать метод BEAN.methodThrowExceptions и обрабатывать исключения:
2.1. если возникло исключение FileSystemException, то логировать его (вызвать метод BEAN.log) и пробросить дальше
2.2. если возникло исключение CharConversionException или любое другое IOException, то только логировать его (вызвать метод BEAN.log)
3. Добавь в объявление метода handleExceptions класс исключения, которое ты пробрасываешь в п.2.1.
4. В методе main обработай оставшееся исключение - логируй его. Используй try..catch

Подсказка:
Если ты захватил исключение MyException, которое не хотел захватывать, его можно пробросить дальше кодом вида:
catch (MyException e) {
 throw e;
}

Требования:
  • Метод handleExceptions должен вызывать метод BEAN.methodThrowExceptions.
  • Метод handleExceptions должен логировать исключение FileSystemException (вызвать метод BEAN.log), а затем пробросить его дальше.
  • Метод handleExceptions должен только логировать (вызвать метод BEAN.log) исключение CharConversionException.
  • Метод handleExceptions должен только логировать любое исключение IOException.
  • Добавь в объявление метода handleExceptions класс исключения FileSystemException.
  • Метод main должен использовать try..catch.
  • Метод main должен логировать исключения, которые кидает метод handleExceptions.
....
package com.javarush.task.task09.task0915; import java.io.CharConversionException; import java.io.IOException; import java.nio.file.FileSystemException; /* Перехват выборочных исключений */ public class Solution { public static StatelessBean BEAN = new StatelessBean(); public static void main(String[] args) { try{ handleExceptions(); }catch(Exception e){ System.out.println(e); } } public static void handleExceptions() throws FileSystemException,CharConversionException { try{ BEAN.methodThrowExceptions(); }catch(FileSystemException e){ BEAN.log(e); throw e; }catch(IOException e){ BEAN.log(e); } } public static class StatelessBean { public void log(Exception exception) { System.out.println(exception.getMessage() + ", " + exception.getClass().getSimpleName()); } public void methodThrowExceptions() throws CharConversionException, FileSystemException, IOException { int i = (int) (Math.random() * 3); if (i == 0) { throw new CharConversionException(); } else if (i == 1) { throw new FileSystemException(""); } else if (i == 2) { throw new IOException(); } } } }
+2
Комментарии (2)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Vladimir Ponamarev
Уровень 18
27 сентября 2019, 09:09
2.2. если возникло исключение CharConversionException(где у тебя????) или любое другое IOException, то только логировать его (вызвать метод BEAN.log)
0
Ksenia VolkovaJava Developer в DXCMaster
27 сентября 2019, 09:05решение
Метод main должен логировать исключения, которые кидает метод handleExceptions Логировать - вызывать метод log()
+7
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush