
今天在码代码的过程中,在判定一个非法情况时,往常是使用输出错误信息并return的方式处理。但今天突发奇想能否使用抛出异常的方式处理非法情况(即输出错误信息并退出程序),于是在网络上学习起了抛出异常相关的信息。
先说结论,抛出异常并不能替代前面的错误处理方式。因为抛出的异常必须在当前方法或父类方法中进行捕获(除却RuntimeException类异常),否则将会导致编译错误。
除了java规定的异常外,也可以使用自定义的异常,只需要对Exception进行继承创建一个新的类。即
public class MyException extends Exception{}
而对于异常有两种使用方法:
一:在同一方法中使用throw与try catch抛出并捕获异常
try{
throw new Exception();
}catch(Exception e){
...
}
... //在catch之后继续执行
二:在被调用方法中抛出异常,在调用方法中捕获异常
public void ex() throws Exception{
...
throw new Exception();
... //不执行,跳转至调用函数catch
}
public void test(){
try{
ex();
}catch(Exception e){
...
}
... //继续执行
}
异常的抛出与捕获在java编程运用中可以应对处理不同的错误,是很强大的工具,能够加强代码的健壮性。