golang语法总结(十八):处理异常
来源:互联网 发布:手机改淘宝评价怎么改 编辑:程序博客网 时间:2024/04/28 12:34
- Go语言没有提供像其它语言一样的try catch的异常与捕获机制,可以用defer、panic、recover代替。
- defer的语句或函数在当前函数执行完之后再执行,先defer的后执行,后defer的先执行。当程序发生严重错误的时候defer也能够执行。有点类似其它语言的析构函数
- 调用panic来制造一个异常
- 调用recover来获取异常信息
func main(){
f1()
f2()
f3()
}
func f1(){
fmt.Println("f1")
}
func f2(){
defer func() {
if err:=recover();err!=nil {
fmt.Println("catch the exception")
}
}()
panic("wa ha ha ha ha ~~~")
}
func f3(){
fmt.Println("f3")
}
输出:
f1
catch the exception
f3
1 0
- golang语法总结(十八):处理异常
- golang服务健壮性---(异常处理)
- Golang语法总结(二):程序结构
- golang语法总结(四):基本数据类型
- golang语法总结(七):常量计数器
- golang语法总结(十):关于++和--
- golang语法总结(十二):循环语句
- golang语法总结(十六):map
- golang语法总结(十七):函数
- golang语法总结(十九):结构struct
- golang 异常处理
- Golang教程:(十八)接口
- VB.net学习笔记(十八)异常处理
- Golang语法总结(一):关键字和注释方法
- golang语法总结(五):变量声明与赋值
- golang语法总结(六):常量声明与赋值
- golang语法总结(九):运算符、指针
- golang语法总结(十一):判断语句if
- javascript的5种基本数据类型
- Shell脚本中的for,while用法
- ubuntu软件安装二 oh-my-zsh
- RecyclerView 中setSpanSizeLookup 解释
- xilinx 的 HDMI输出的 IP CORE 调试
- golang语法总结(十八):处理异常
- Spring自定义接口,不定期更新。。。
- Android学习之路
- Magento(社区版)自带模块解析以及在国内的使用建议二
- Linux 开启IP转发功能
- viewWithTag方法的一些问题
- uboot的relocation原理详细分析
- 2015这一年App Store审核指南都有哪些变化
- mysqli_query 的定义和用法