黑马程序员技术交流社区
标题:
异常
[打印本页]
作者:
孙运强
时间:
2011-10-28 12:25
标题:
异常
什么是受检查异常?
怎么处理异常,处理他们的原则?
作者:
o火o把o
时间:
2011-10-28 12:37
Exception异常分为:RuntimeException(运行时异常,也叫未检查异常或不受检查异常)和已检查异常(或受检查异常):
已检查异常 是指程序员已经足够小心的检查了他的代码,但是还是不能保证代码不出现异常;如,程序要访问某个文件,但访问时文件不存在,这和程序本身没有太大关系;再如,程序要进行网络连接,但执行时没有连接网线,这些问题都是已检查异常。
未检查异常 一般是由程序员没有细心检查代码,而导致的如空指针异常、数组越界、类型转换异常等都是由于程序员粗心大意造成的。这些异常是在编码过程中是能够避免的。
作者:
o火o把o
时间:
2011-10-28 12:51
对于可能出现异常的代码,JAVA通常有两种处理办法:
1.在方法中用try...catch语句捕获并处理异常,catach语句可以有多个,用来匹配多个异常。
2.对于处理不了的异常或者要转型的异常,在方法的声明处通过throws语句抛出异常。
对多异常的处理原则:
1.方法处理有两种:try 或者 throws.
2.调用到抛出异常的功能时,抛出几个就处理几个,一个try对应多个catch,不要定义多余的catch块.
3.申明异常时,建议声明更为具体的异常.这样处理地可以更具体.函数当中一旦有异常发生,函数就结束,下面的语句不会被执行.
4.如果多个catch块中的异常出现继承关系,父类异常catch块放在最下面.
5.建议在进行catch处理时,catch中一定要定义具体处理方式.不要简单定义一句 e.printStackTrace(),也不要简单的就书写一条输出语句.
6.如果该异常处理不了,但并不属于该功能出现的异常.可以转换该异常后,再抛出和该功能相关的异常;或者异常可以处理,当需要将异常产生的和本功能相关的问题提供出去,让调用者知道,并处理;也可以将捕获的异常处理后,转换新的异常.
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2