Но ни по одному пункту не прошло, хелп!
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) { //6. Метод main должен использовать try..catch.
try {
handleExceptions();
}catch (FileSystemException e){
BEAN.log(e); //7. Метод main должен логировать исключения, которые кидает метод handleExceptions.
}
}
public static void handleExceptions() throws FileSystemException { //5. Добавь в объявление метода handleExceptions класс исключения FileSystemException.
try {
BEAN.methodThrowExceptions(); // Метод handleExceptions должен вызывать метод BEAN.methodThrowExceptions.
} catch (FileSystemException e){ //2. Метод handleExceptions должен логировать исключение FileSystemException (вызвать метод BEAN.log), а затем пробросить его дальше.
BEAN.log(e);
throw e;
} catch (CharConversionException e) { //3. Метод handleExceptions должен только логировать (вызвать метод BEAN.log) исключение CharConversionException.
BEAN.log(e);
} catch (IOException e) { //4. Метод handleExceptions должен только логировать любое исключение IOException.
BEAN.log(e);
}
}
public static class StatelessBean {
public void log(Exception exception) {
System.out.println(exception.getMessage() + ", " + exception.getClass().getSimpleName());
}
public static 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();
}
}
}
}