Java 6和Java 7对throw语句的不同理解


2 代码分析

Java 6对该代码理解:Java编译器处理“简单而粗暴”——由于在捕获该异常时声明ex类型是Exception,因此Java编译器认为这段代码可能抛出Exception异常,所以包含这段代码的方法通常需要声明抛出Exception异常。

【java编程开发免费领取资料的微信:tangniu520666,备注“4”需要的可以加一下】

Java 7对该代码理解:Java编译器会执行更细致的检查,Java 编译器会检查throw语句抛出异常的实际类型,这样编译器知道①号代码处实际上只可能抛出FileNotFoundException异常,因此在方法签名中只声明抛出FileNotFoundException异常即可。

posted @ 2017-03-26 14:14  尚·学  阅读(175)  评论(0编辑  收藏  举报