Połączyłem swój kod źródłowy z kodem współpracownika i zobaczyłem, że dodał wyjątek do zgłoszenia w deklaracji metody; jednak wiedziałem, że ten wyjątek nigdy nie zostanie tak naprawdę wyrzucony z tej metody.Dlaczego można zadeklarować metodę zgłaszania wielu wyjątków, nawet jeśli żaden z nich nie został zgłoszony?
Zastanawiam się, dlaczego kompilator nie ostrzegł mnie o "nie zgłoszonym wyjątku zadeklarowanym" (lub coś w tym stylu). Zdaję sobie sprawę, że możesz zadeklarować metodę wyrzucającą wyjątki N, nawet jeśli żaden z tych wyjątków nie zostanie zgłoszony przez kod w metodzie.
Dlaczego tak jest?
public void foo() throws IOException, IntrospectionException, BadStringOperationException, ... {
//do nothing
}
ponieważ JVM może propagować wyjątek – OPK