十五:GO语言的错误处理机制

GO语言在默认情况下,当发生错误后(panic),程序就会退出(崩溃)

如果希望在发生错误后,可以捕获到错误,并进行处理,保证程序可以继续执行,则需要使用GO语言的错误处理机制

GO语言中的错误处理方式为:defer,panic,recover

这三者的关系为,在程序出现错误的时候可以抛出一个panic的一场,然后在defer中通过recover来捕获这个异常,之后再进行相应处理,比如写错误日志或者给管理员发送一封错误邮件

 

代码示例

该函数在运行到17行的时候会报错,因为num2为0,无法进行运算,所以会报错

 

输出结果

这里可以看到,在main中调用该函数后,捕获异常并且正常输出,

然后接着运行main函数中后面的代码

 

 

 

自定义错误

  介绍:

  GO程序中,也支持自定义错误,使用errors.New和panic内置函数

  1.errors.New("错误说明"),会返回一个error类型的值,表示一个错误

  2.panic内置函数,接受一个interface{}类型的值(在GO语言中interface{}可以是任何值)作为参数,可以接受error类型的变量,输出错误信息,并退出程序  

  

 

 输出结果

在程序中使用panic时,程序会被终止,并且输出传入panic函数中的参数内容

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章