Java学习笔记26 异常Exception

1.         Junit3.84.x):keep the bar green to keep the code clean.

没有反射,很多框架就不存在了。

3.8基于反射,4.x基于注解

2.         Junit4的执行的一般流程:

a)      首先获得带测试类所对应的Class对象

b)      然后通过该Class对象获得当前类当中所有public方法所对应的Method数组

c)       遍历该Method数组,取得每一个Method对象

d)      调用每个Method对象isAnnotationPresent(Test.class)方法,判断该方法是否被Test注解所修饰

e)      如果该方法返回true,那么调用method.invoke()方法去执行该方法,否则不执行。

3.         单元测试不是为了证明你是对的,而是证明你没有错误。

4.         异常(Exception)。(java所有的异常类都直接或间接的继承于Exception类)

a)      Java中异常分为两大类

                       i.              Checked exception( Runtime Exception)

                     ii.              Unchecked exception(Runtime Exception)

b)      RuntimeException类也是直接继承自Exception类,它叫做运行时异常,java中所有的运行时异常都会直接或间接地继承自RuntimeException

c)       凡是继承自Exception类,而不是继承自RuntimeException的类都叫做非运行时异常。

5.         Throwable有两个直接子类,ErrorException.

a)      发生异常时,后面的代码不会再执行(是我们能处理的,我们可以采取一定的措施补救)

b)      发生错误时,我们没法再进行处理,就随他去了,不必再管了

6.         异常处理的一般结构:

try

{

      

 

}

catch(Exception e)

{

 //e是异常时生成的对象作为参数传进来,有多个catch时,只执行一个。

}

finally

{

 

}

 

7.         对于非运行时异常(checked exception),必须要对其进行处理,处理方式有两种:第一种是使用try…catch…finally进行捕获;第二种是在调用该会产生异常的方法所在的地方申明throws Exception

8.         对于运行时异常,我们可以不对其进行处理,也可以对其进行处理,推荐不处理

9.         NullPointerException是空指针异常,出现该异常的原因在于某个引用为null,却任然调用了其方法,这时会出现该异常

10.    所谓自定义异常,通常就是定义一个继承自Exception类的子类,那么这个类就是一个自定义异常类。通常情况下,我们都会直接继承自Exception类,一般不会继承某个运行时异常类。

11.     我们可以使用多个catch块来捕获异常,这是需要将父类型的catch块放到子类型的catch块之后,这样才能保证后续的catch可能别执行,否则子类的catch块将永远无法到达,java编译器会报编译错误;如果多个catch块的异常类型是独立的,那么顺序前后无关紧要

12.    try块里面有return时,先需要执行finally块中的代码,然后再return

13.    try块里面有System.exit(0);语句,那么就不会执行finally块中的代码,直接退出,因为System.exit(0)会终止当前运行的java虚拟机,程序会在虚拟机终止前结束执行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值