Я знаю, что сигнатура метода включает имя метода и его список параметров .
Но как насчет throws Exception
?
public List<ServiceStatusVo> listServiceStatuses() throws RetrieverException {
...
return list;
}
Если он не включен, то почему я не могу передать следующую лямбду:
() -> listServiceStatuses()
но я могу передать
() -> {
try {
return listServiceStatuses();
} catch (RetrieverException e) {
}
}
А также я могу выбросить это снова
() -> {
try {
return listServiceStatuses();
} catch (RetrieverException e) {
throw e;
}
}
Я знаю Supplier<T>
функциональный интерфейс, вот что меня действительно смущает , если throws не является частью сигнатуры метода .
Спасибо за помощь.