A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Treasureと情 高级黑马   /  2012-2-27 15:27  /  9960 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

运行时异常与一般异常有何异同?

3 个回复

倒序浏览
运行时异常再编译时不提示,发生的时候不可修复。而一般异常 编译时提示,通常发生了可以处理,有处理语句。
回复 使用道具 举报
本帖最后由 周峰 于 2012-2-27 16:09 编辑

你要分清楚异常的两种就简单的说:
第一种运行时异常:如果某一段代码或者是方法可能、将会出错,那么我们就叫做运行时异常。
处理方法:
1.直接try起来。
2.抛出异常给调用这个方法的地方使用try。
注:这类异常往往是计算机可以处理的,也就是说  如果是一个空指针,我们只需要改一下代码就可以解决。

第二种是致命异常:
这类异常通常是计算机不能解决的异常。比如说,你一直来个死循环, 循环到内存爆满卡死。 你说计算机能解决么?超出了能力范围,所以异常的第二类我们通常叫致命异常。
处理方法: 更换硬件。

至于你说的普通异常可以归类到运行时异常中。还有一个异常是叫做编译错误, 这个错误是在你编码上就没通过。可以是你代码漏了一个花括号导致,也可以是语法上的错误,比如在一个brake后面写一段代码, 这类语法错误就会报错!

以上希望对你有所帮助!
回复 使用道具 举报
编译时被检测异常:
该异常在编译时,如果没有处理(没有抛也没有try),编译失败。
该异常被标识,代表这可以被处理。
运行时异常(编译时不检测):
在编译时,不需要处理,编译器不检查。
该异常的发生,建议不处理,让程序停止。需要对代码进行修正。
希望对你有帮助{:soso_e100:}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马