例如,我在Spring bootstrap 代码中看到了这一点(在带有webServer
变量的catch
块中):
@Override
public final void refresh() throws BeansException, IllegalStateException {
try {
super.refresh();
}
catch (RuntimeException ex) {
WebServer webServer = this.webServer;
if (webServer != null) {
webServer.stop();
}
throw ex;
}
}
为什么不做this.webServer.stop()
呢?
局部变量webServer
的用途是什么?