温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
行,先来看一下咱们这个异常的课后题,这呢是一个小的题目,这个题目呢,就涉及到这个程序的一个执行到底输出哪些信息了,这个咱们关注一下,我把它这个呃代码呢粘到咱们这个程序当中,在这点右键先去new一个class啊行,然后呢,把这个代码呢,我们CTRL粘过来。Ctrl shift f1下行来看一看,就是一进来以后呢,这是一个static的一个方法,这也是一个static一个方法,然后这块呢,是我们的main方法,直接呢看没方法,方法里边这一个method a method a呢,我们用拆开呢去处理了,然后这呢一个method b,所以先不用管这个method b,先来看这个结构,直接method a。Try catch的时候呢,在这呢叫get message,那我们就先来看一下这个method a,那你像我们这个这个现在需要考虑的就是我们执行的话呢,会先输出谁后输出谁。
01:04
那这不就这段代码嘛,是吧,先输出进入方法A啊,然后这个吗。嗯,对,这块呢,只是要抛了一个异常了,抛异常之前呢,这时候你还别着急抛呢,这是不是得把这个也输出一下,所以这是一,这呢就是二,那二执行完以后呢,这个就through有点像咱们前面说的那个return一样,是吧,这块你through就through了,这个throw呢,携带了一个信息就制造异常,那这个异常呢,确实出现了,出来以后呢,是不是就放到这块了,出现一个异常对象,紧接着马上是不是就被开始了。哎,Catch里边呢,我们去get一下message这个输出什么呀,诶知道异常,诶这个呢,就是相当于我们通过构造器的方式给那个属性message赋值了这个get message有get方法,那就把这个呢就拿到了。哎,这呢就是一个诶123哎这样一个过程啊,这个呢,咱们先注掉,先看下这个结果。
02:10
诶没问题,确实这样,接着我们把这个打开,我调这个method b,就执行它method b这块呢是一个c out它,然后这个return,但return之前呢,这个得输出一下,所以呢就输出它,输出它,哎这个呢没有别的了,诶就比较简单一些,哎这呢,其实你也会看到说,诶竟然还可以这样写,就是我们这里边呢没有明确的异常,所以我们也可以就写一个try finally,哎这这这有什么意义呢?就万一这里边有一些运行时异常,咱们说运行时异常可以不处理,其实我就没有写开始了,你要真要出现一个运行时异常的话呢,Finally里呢,还是可以保证这个代码一定会执行的,哎就是只是呢想考虑一下,就是一定会被执行这个操作,这个事儿行,这个呢也比较简单一些,哎,这呢,就是咱们这个操作。
03:03
行,那么真正在开发当中呢,大家要灵活的去使用try catch family和ROS,诶根据实际情况,你看看应该呢是使用哪一个结构啊,行,这个呢比较简单。
我来说两句