throws和throw的区别
1.throws使用在函数上,throw使用在函数内
2.throws后面跟的是异常类,可以跟多个,用逗号隔开,throw后跟的是异常对象,throw抛出对象后,下面不能有任何语句,因为throw抛出对象程序停止,执行不到下面的语句。
Exception中有一个特殊的子类异常RuntimeException运行时异常。
如果在函数内容抛出该异常,函数上可以不用声明,编译一样通过。
如果在函数上声明了该异常,调用者可以不用进行处理,编译一样通过。
之所以不用在函数声明,是因为不需要让调用者处理。
当该异常发生,希望程序停止,因为在运行时,出现了无法继续运算情况,无法运算的话,就不能判断是那里出了错,所以希望程序停止后,对代码的进行修正。
自定义异常时,如果该异常的发生,无法在继续进行运算,就让自定义异常继承RuntimeException。
对于异常分两种:
1.编译时被检测的异常。
2.编译时不被检测的异常(运行时异常。RuntimeException以及其子类)
|
|