java拾遗
最近在工作中,经常发现java中一些 小细节,自己以前都没注意,发现之后还是有点新鲜的,不过都是很基础的东西(也许是自己java基础太过薄弱,嘿嘿),就记录在这里,以予自乐。
1.catch的问题
File file = new File( " D:/1/.txt " );
try ... {
file.createNewFile();
} catch (IOException e1) ... {
System.out.println("bbb");
}
catch (Exception e) ... {
System.out.println("kkkk");
}上述代码,catch了IOException之后,还会走Exception中代码吗?答案是不会了,嘿嘿,是不是很白痴的问题?
2.finally的问题
for ( int i = 0 ;i < 5 ;i ++ ) ... {
try...{
if(i==3)
continue;
System.out.println(i);
}catch(Exception e)...{
}finally...{
System.out.println(i+" finally");
}
}输出结果中会不会输出“3 finally”?恩,答案是会输出的,这点让我很是兴奋,因为偶的一个系统就是因为这个细节出bug了。。。
3.load-on-startup
在web.xml中配置如下:
< servlet >
< servlet-name > InitiaServlet </ servlet-name >
< servlet-class > chb.demo.demo.InitiaServlet </ servlet-class >
< load-on-startup > 1 </ load-on-startup >
</ servlet >则当服务器启动完成后,会自动调用InitiaServlet的init方法,而不用等到有请求时才初始化该servlet