异常

Error和Exception的区别

Error和Exception都继承自Throwable,RuntimeException继承自Exception。

Error一般指虚拟机相关的问题,如系统崩溃,虚拟机错误,内存空间不足,方法调用栈溢出等。如java.lang.StackOverFlowError和Java.lang.OutOfMemoryError。建议终止程序。

Exception表示程序可处理的异常,可以捕捉且可能恢复。

运行时异常(未检查异常)和编译时异常(受检查异常)

Exception又分为运行时异常(Runtime Exception)和受检查的异常(Checked Exception )。

throw和throws

throw表示抛异常,可以抛任意Throwable,包括抛自定义异常类(Exception的子类)的对象。

throw new RuntimeException("a的值大于0,不符合要求");

throws总出现在方法头中,声明方法中可能会抛出的所有异常,如果方法抛出了异常,那么调用这个方法的时候就需要处理这个异常。

你可能感兴趣的:(异常)