У меня есть следующая программа -
private static void fun() throws Error {
System.out.println("I am having fun");
throw new Error();
}
private static void enjoy() {
System.out.println("I am enjoying");
throw new Error();
}
public static void main(String[] args) {
try {
fun();
} catch(Error e) {
System.out.println(e);
}
System.out.println("\n");
try {
enjoy();
} catch(Error e) {
System.out.println(e);
}
}
Здесь я объявил два метода - fun()
и enjoy()
Оба имеют
throw new Error()
оператор
Однако
fun()
имеет throws Error
, добавленный к объявлению метода
, тогда как
enjoy()
не имеет его.
Но оба дают одинаковый вывод -
I am having fun
java.lang.Error
I am enjoying
java.lang.Error
Итак, в чем же смысл добавления throws Error
к объявлению метода?