PlayJava Day011
程序员文章站
2023-10-13 21:34:43
今日所学: /* 2019.08.19开始学习,此为补档。 */ Java异常处理 1.异常的概念:程序运行过程中发生的问题,从而引发了中断。 2.捕获和处理异常:Java中,用try ... catch ... 来捕获异常;try ... catch ... finally ①try里面写可能会有 ......
今日所学:
/* 2019.08.19开始学习,此为补档。 */
java异常处理
1.异常的概念:程序运行过程中发生的问题,从而引发了中断。
2.捕获和处理异常:java中,用try ... catch ... 来捕获异常;try ... catch ... finally
①try里面写可能会有异常的代码语句,catch里面捕获,然后处理。为了调试方便,打印出栈信息,以便跟踪。
②finally:即使有return,也一定会执行了再返回。
3.①throws表示当前方法不处理异常,而是交给方法的调用处去处理。 //向上抛
相当于声明抛出异常。 //把异常向外面抛,不想处理,抛给别人。
例如:throws numberformatexception
②throw表示直接抛出一个异常。
例:
public static void testthrow(int a) throws exception { if(a == 1) { throw new exception("有异常") ; } system.out.println(a) ; public static void main(string[] args) { try { testthrow(1) ; } catch(exception e) { e.printstacktrace() ; } try { testthrow(0) ; } catch(exception e) { e.printstacktrace() ; }
4.①exception是检查型异常,编译时会检查。在程序中必须使用try ... catch ...进行处理。
②runtimeexception是非检查型异常,编译时不检查。
例如numberformatexception,可以不使用try ... catch ...进行处理。但是如果产生异常,则异常将由jvm进行处理。
因此最好也用try ... catch ...捕获。
5.自定义异常类:定义一个子类继承自exception。
例如:
public class customexception extends exception { public customexception(string message) { super(message) ; } //构造方法 }