当前位置:首页>家电维修>壁挂炉>

小松鼠壁挂炉报警e1处理办法(小松鼠壁挂炉e1故障怎么处理图解)

小松鼠壁挂炉报警e1处理办法(小松鼠壁挂炉e1故障怎么处理图解)

更新时间:2022-03-26 15:48:58
1、try...catch关键字
  • 使用 try 和 catch 关键字可以捕获异常。
  • try/catch 代码块放在异常可能发生的地方。

try/catch代码块中的代码称为保护代码,使用 try/catch 的语法如下:

try { // 程序代码 } catch(ExceptionName e1) { //Catch 块 }

  • catch 语句包含要捕获异常类型的声明。当保护代码块中发生一个异常时,try 后面的 catch 块就会被检查。如果发生的异常包含在 catch 块中,异常会被传递到该 catch 块,这和传递一个参数到方法是一样。
  • 一个 try 代码块后面跟随多个 catch 代码块的情况就叫多重捕获

多重捕获块的语法如下所示:

try{ // 程序代码 }catch(异常类型1 异常的变量名1){ // 程序代码 }catch(异常类型2 异常的变量名2){ // 程序代码 }catch(异常类型2 异常的变量名3){ // 程序代码 }2、throws/throw 关键字

如果一个方法没有捕获一个检查性异常,那么该方法必须使用throws 关键字来声明。throws 关键字放在方法签名的尾部。也可以使用 throw 关键字抛出一个异常,无论它是新实例化的还是刚捕获到的。

下面方法的声明抛出一个 RemoteException 异常:

public static void main(String[] args) throws InterruptedException { Thread.sleep(123); }

一个方法可以声明抛出多个异常,多个异常之间用逗号隔开。

3、fnally关键字
  • finally 关键字用来创建在 try 代码块后面执行的代码块。
  • 无论是否发生异常,finally 代码块中的代码总会被执行。在finally 代码块中,可以运行清理类型等收尾善后性质的语句。

finally 代码块出现在 catch 代码块最后,语法如下:

try{ // 程序代码 }catch(异常类型1 异常的变量名1){ // 程序代码 }catch(异常类型2 异常的变量名2){ // 程序代码 }finally{ // 程序代码 }

  • 对于异常的使用有一个不成文的约定:尽量在某个集中的位置进行统一处理,不要到处的使用 try-catch,否则会使得代码结构混乱不堪。
  • 按照我们程序员的惯性认知:当遇到return语句的时候,执行函 数会立刻返回。但是,在Java语言中,如果存在fnally就会有例外。除了return语句,try代码块中的break或continue语句也可 能使控制权进入fnally代码块。
  • 请勿在try代码块中调用return、break或continue语句。万一无 法避免,一定要确保fnally的存在不会改变方法的返回值。
  • 方法返回值有两种类型:值类型与对象引用。对于对象引用, 要特别小心,如果在fnally代码块中对返回的对象成员属性进行了修改,即使不在fnally块中显式调用return语句,这个修改 也会作用于返回值上。

我们已经学完了异常知识,最后再给大家几个忠告:

第一,尽量不要捕获类似Exception这样的通用异常,而是应该捕 获特定异常。这是因为在日常的开发和合作中,我们读代码的机会往往超过写代码,软件工程是门协作的艺术,所以我们有义务让自己的代码能够直观地体现出尽量多的信息,而泛泛的Exception之 类,恰恰隐藏了我们的目的。另外,我们也要保证程序不会捕获到我们不希望捕获的异常。比如,你可能更希望RuntimeException 被扩散出来,而不是被捕获。

第二,不要生吞(swallow)异常。这是异常处理中要特别注意的 事情,因为很可能会导致非常难以诊断的诡异情况。生吞异常,往往是基于假设这段代码可能不会发生,或者感觉忽略异常是无所谓的,但是千万不要在产品代码做这种假设!如果我们不把异常抛出来,程序可能在后续代码以不可控的方式结束。没人能够轻易判断究竟是哪里抛出了异常,以及是什么原因产生了异常。

,