finally最终执行块和throw与throws
2017-10-19 18:38
399 查看
finally最终执行块:
如果你在写try catch的时候需要一段代码不管出现错误或者不出现错误,都执行这段代码的话,就在最后面加上finally最终执行块,而且这个finally要写在最后面,并且一个try catch只能写一个finally,finally后面不可以再写catch。例如:
可以看到出现了异常进到了相对应的陷阱之后,这个finally依然会执行。适合用于写关闭资源的代码,因为finally无论如何都会执行,解决了以前try catch的bug。
throw:
throw用于抛出异常对象,这个异常可以是系统定义的,也可以是自己定义的。例如:
构建异常对象被throw抛出后就会进入到对应的异常陷阱里,执行陷阱里的代码。如果没有相对应的陷阱就会往外抛,直到抛到main方法外位为止。
例如在封装属性里就可以用到throw,因为当经过判断条件为false就可以抛出一个异常来提示客户操作有问题。例如:
这句throw后面是不可以再写代码的了,如果想在这之后执行一些代码可以使用try catch里的finally。例如:
throws: throws是方法可能抛出异常的声明。(用在声明方法时,表示该方法可能要抛出异常),调用该方法时需要使用try catch处理这个异常或者继续抛出这个异常,不然就会直接报语法错误(继承于RuntimeException类的除外)。例如:
如果抛出的是RuntimeException或继承于这个类之下的异常,就不会要求对异常进行处理。例如:
方法抛出异常:
方法就是任务的封装,或者功能的封装,如果一旦出现问题,无论是参数合法性还是调用别的方法有异常,都必须反映出去,不可以处理后没有任何提示,没有任何提示的话用户也无法得知自己的操作是否是正确的。 throws可以抛出多个异常声明,只需要在异常之间用逗号隔开就可以了。例如:
异常的抛出机制主要就是用于提醒客户的操作是否有问题,或者哪里的代码运行时出现了异常,所以异常陷阱里也必需要写有一些代码来提示用户,不能什么都不写,什么都不写出现错误了,也不知道是怎么回事,这就失去了异常处理的意义了。
如果你在写try catch的时候需要一段代码不管出现错误或者不出现错误,都执行这段代码的话,就在最后面加上finally最终执行块,而且这个finally要写在最后面,并且一个try catch只能写一个finally,finally后面不可以再写catch。例如:
可以看到出现了异常进到了相对应的陷阱之后,这个finally依然会执行。适合用于写关闭资源的代码,因为finally无论如何都会执行,解决了以前try catch的bug。
throw:
throw用于抛出异常对象,这个异常可以是系统定义的,也可以是自己定义的。例如:
构建异常对象被throw抛出后就会进入到对应的异常陷阱里,执行陷阱里的代码。如果没有相对应的陷阱就会往外抛,直到抛到main方法外位为止。
例如在封装属性里就可以用到throw,因为当经过判断条件为false就可以抛出一个异常来提示客户操作有问题。例如:
这句throw后面是不可以再写代码的了,如果想在这之后执行一些代码可以使用try catch里的finally。例如:
throws: throws是方法可能抛出异常的声明。(用在声明方法时,表示该方法可能要抛出异常),调用该方法时需要使用try catch处理这个异常或者继续抛出这个异常,不然就会直接报语法错误(继承于RuntimeException类的除外)。例如:
如果抛出的是RuntimeException或继承于这个类之下的异常,就不会要求对异常进行处理。例如:
方法抛出异常:
方法就是任务的封装,或者功能的封装,如果一旦出现问题,无论是参数合法性还是调用别的方法有异常,都必须反映出去,不可以处理后没有任何提示,没有任何提示的话用户也无法得知自己的操作是否是正确的。 throws可以抛出多个异常声明,只需要在异常之间用逗号隔开就可以了。例如:
异常的抛出机制主要就是用于提醒客户的操作是否有问题,或者哪里的代码运行时出现了异常,所以异常陷阱里也必需要写有一些代码来提示用户,不能什么都不写,什么都不写出现错误了,也不知道是怎么回事,这就失去了异常处理的意义了。
相关文章推荐
- JAVA语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try块中可以抛出异常吗?
- JAVA基础再回首(十九)——异常的概述、Try…Catch、多异常处理、Throws、throw、finally、自定义异常及异常的注意事项
- java的异常处理try, catch,throw,throws和finally
- Java异常之try,catch,finally,throw,throws
- 面试题-----throw和throws是的区别 finally关键字及其面试题
- Java - Java语言如何进行异常处理,关键字:throws、throw、try、catch、finally分别如何使用?
- java .final finally 和 finalize的区别,,,,throws 和 throw 的区别,,,异常在继承中的特点
- Java异常处理综合例子(try、catch、finally、throws、throw)
- 关于try-catch、throw、finally在异常时的执行顺序
- Java异常处理综合例子(try、catch、finally、throws、throw) .
- Android异常处理——try、catch、finally、throw、throws
- Java语言如何进行异常处理,关键字:throws、throw、try、catch、finally分别如何使用?
- 关于try-catch、throw、finally在异常时的执行顺序
- Java异常类简介以及throws,try,catch,throw,finally的区别
- Java异常处理综合例子(try、catch、finally、throws、throw)
- throw与throws的区别,另记录try,catch,finally
- JAVA语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try块中可以抛出异常吗?
- 异常概念和处理机制,try-catch-finally,throw和throws,自定义异常
- Java异常机制try、catch、finally、throw、throws五个关键字。
- Java异常之try,catch,finally,throw,throws