Go中recover与panic区别详解
作者:风云
这篇文章主要介绍了Go中recover与panic区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
概念
panic 与 recover 是 Go 的两个内置函数,这两个内置函数用于处理 Go 运行时的错误。
panic用于主动抛出错误, recover 用来捕获panic 抛出的错误。
func main() {
//捕获 异常
defer func() {
if p := recover(); p != nil {
fmt.Printf("panic recover! p: %v", p)
//类型判断
str, ok := p.(string)
if ok {
err := errors.New(str)
fmt.Println(err)
} else {
err := errors.New("panic")
fmt.Println(err)
}
}
}()
fmt.Println("hello world")
add(1, 0)
}
func add(x, y int) int {
// 抛出错误
panic("test")
z := x / y
return z
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
- Go panic和recover函数使用细节深入探究
- Go中的 panic / recover 简介与实践记录
- 一文带你掌握Golang中panic与recover的使用方法
- GoLang中panic与recover函数以及defer语句超详细讲解
- Golang中panic与recover的区别
- Golang异常处理之defer,panic,recover的使用详解
- Golang 错误捕获Panic与Recover的使用
- 小学生也能看懂的Golang异常处理recover panic
- go语言的panic和recover函数用法实例
- go语言异常panic和恢复recover用法实例
- Go语言panic和recover的用法实例
