[英]Two close methods in try-with-resources
我有以下代码:
try(Socket s1=new Socket(...); Socket s2=new Socket(...);)
{
some logic...
}
据我了解,Java首先关闭s2
,然后关闭s1
。 如果s2.close()
引发异常,将会发生什么? Java会在先前失败后尝试关闭s1
吗?
引用JLS Sec 14.20.3 (重点为我):
资源以与初始化时相反的顺序关闭。 仅当资源初始化为非空值时,它才关闭。 一个资源关闭的异常不会阻止其他资源的关闭。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.