Почему параметр catch неявно является окончательным? - PullRequest
5 голосов
/ 12 октября 2011
catch (IOException|SQLException ex) {
    logger.log(ex);
    throw ex;
}

здесь, почему ex неявно является окончательным?Какая польза от того, чтобы сделать ex безоговорочно финальным?

1 Ответ

7 голосов
/ 12 октября 2011

Это неявно окончательно, потому что для вас не имеет смысла менять объект, на который указывает ex, особенно в этом случае, когда это может быть либо IOException, либо SQLException, и, следовательно, (статический) компилятору будет сложно определить тип назначения.

...