首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

JAVA错误处理机制有关问题

2012-02-27 
JAVA异常处理机制问题由于SCJP备考,复习一些基础知识,发现不少有意思的问题。如java对异常的处理机制,如果

JAVA异常处理机制问题
由于SCJP备考,复习一些基础知识,发现不少有意思的问题。
如java对异常的处理机制,如果没有特别的留意,很可能犯错。
如以下代码,
        void   test2(){
                throw   new   ArithmeticException();
        }
编译通过,并也能够顺利执行。这与书上说的java   异常处理机制不同,书上说“方法体内抛出的任何异常该方法都要在throws列出”。但是在JDK   API的帮助文档中又这么说:“RuntimeException   是那些可能在   Java   虚拟机正常运行期间抛出的异常的超类。   可能在执行方法期间抛出但未被捕获的   RuntimeException   的任何子类都无需在   throws   子句中进行声明。”;ArithmeticException是RuntimeException的子类,按照API文档来讲,上述代码完全无问题。所以提出第一个问题:为什么RuntimeException及其子类有如此特权?

[解决办法]
所以提出第一个问题:为什么RuntimeException及其子类有如此特权?

=========
讨论这个跟讨论为什么抛出已检查异常一定要在方法中声明一样
有意义?

热点排行