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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 梦幻精灵 初级黑马   /  2014-5-18 21:23  /  1080 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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

3 个回复

倒序浏览
异常分两种:
1.编译时被检测的异常(一般异常)
2.运行时异常(编译时不检测),指在运行时检测。
1,一般异常在编译时如果没有被处理,编译会失败。
2,运行时异常,在编译时不需要处理,编译器不检查。该异常发生,建议不处理,直接让程序停止,需要对代码进行修正。
回复 使用道具 举报
异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。
回复 使用道具 举报
Java提供了两类主要的异常:runtime exception和checked exception。checked 异常也就是我们经常遇到的IO异常,以及SQL异常都是这种异常。对于这种异常,JAVA编译器强制要求我们必需对出现的这些异常进行catch。所以,面对这种异常不管我们是否愿意,只能自己去写一大堆catch块去处理可能的异常
另外一种异常:runtime exception,也称运行时异常,我们可以不处理。当出现这样的异常时,总是由虚拟机接管。比如:我们从来没有人去处理过NullPointerException异常,它就是运行时异常,并且这种异常还是最常见的异常之一。RuntimeException体系包括错误的类型转换、数组越界访问和试图访问空指针
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马