跳到主要内容

go-异常和错误相关

panic 异常和主动触发 panic​

  • panic异常表示程序运行时出现错误
  • panic用于主动抛出错误
    • 程序启动时发现关键配置缺失、开发阶段快速暴露严重错误都可以主动抛出错误
类型触发者示例
运行时 panicGo 运行时nil map 写入、数组越界
主动 panic开发者panic("配置错误")
go
package main

import "fmt"

func main() {
fmt.Println("开始")

panic("程序发生异常")

fmt.Println("结束")
}

使用 recover 捕获 panic​

  • recover() 通常必须配合 defer 使用