首页 > 其他 > 详细

go- 6.5 错误处理

时间:2020-12-24 00:58:56      阅读:26      评论:0      收藏:0      [点我收藏+]

1. 基本说明

1. go不支持传统的try---finally
2. go中引入的处理方式为:defer,panic,recover
3. 描述:go中可以抛出一个panic异常,然后在defer中通过recover捕获这个异常,然后正常处理

2. 使用defer+recover来处理错误

package main
import(
    "fmt"
    "time"
)

func test(){
    defer func(){
        err := recover  // recover()可以捕获到异常
        if err != nil {
            fmt.Println("err=", err)
        }
    }()
    num1 := 10
    num2 := 0
    res := num1/num2
    fmt.Println("res", res)
}

func main(){
    test()
}

3.自定义错误

1. 使用errors.New("错误说明")和panic内置函数
2. errors.New("错误说明"),会返回一个error类型的值,表示一个错误
3. panic内置函数,接收一个interface{}类型的值(也就是任何值)作为参数,可以接收error类型的变量,输出错误信息,并退出程序

技术分享图片

 

go- 6.5 错误处理

原文:https://www.cnblogs.com/JackShi/p/14181685.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!