7-4 panic和recover
代码:https://github.com/NIGHTFIGHTING/go_learning/blob/master/src/errhandling/recover/recover.go
package mainimport (//"errors""fmt"
)func tryRecover() {defer func() {r := recover()if err, ok := r.(error); ok {fmt.Println("Error occurred:", err)} else {//panic(r)panic(fmt.Sprintf("I don't know what to do: %v", r))//panic: 123 [recovered]//panic: I don't know what to do: 123}}()//panic(errors.New("this is an error"))//b := 0//a := 5/b//fmt.Println(a)//Error occurred: runtime error: integer divide by zeropanic(123)
}func main() {tryRecover()
}
7-4 panic和recover相关推荐
- Go 学习笔记(19)— 函数(05)[如何触发 panic、触发 panic 延迟执行、panic 和 recover 的关系]
1. 异常设计思想 Go 语言的错误处理思想及设计包含以下特征: 一个可能造成错误的函数,需要返回值中返回一个错误接口( error ),如果调用是成功的,错误接口将返回 nil ,否则返回错误. 在 ...
- recover 没有捕获异常_GO语言异常处理机制panic和recover分析
本文实例分析了GO语言异常处理机制panic和recover.分享给大家供大家参考.具体如下: Golang 有2个内置的函数 panic() 和 recover(),用以报告和捕获运行时发生的程序错 ...
- go的异常处理,defer,panic,recover
比较经典的一个例子,里面包含defer,panic,recover 例子代码: package main import "fmt" func main(){ defer func( ...
- Golang中的panic和recover(捕获异常)
Golang中的panic和recover(捕获异常) 参考文章: (1)Golang中的panic和recover(捕获异常) (2)https://www.cnblogs.com/zhzhlong ...
- Go 语言编程 — panic 和 recover
目录 文章目录 目录 defer,panic 和 recover panic recover 通过 panic + recover 来简化错误处理 defer,panic 和 recover Gola ...
- golang中的panic和recover
golang中的panic需要recover捕获,不然程序就会挂掉 package mainimport "fmt"func main() {f1()fmt.Println(&qu ...
- 关键字之defer、panic、recover
一.defer 1. defer延迟调用,完成一些收尾工作.无论函数或方法是否出错,一定会在退出当前函数或者方法之前调用传入的函数(只对函数或方法生效,代码块不生效),常 ...
- 异常处理机制——panic 和 recover
Golang 有2个内置的函数 panic() 和 recover(),用以报告和捕获运行时发生的程序错误,与 error 不同,panic-recover 一般用在函数内部.一定要注意不要滥用 pa ...
- Golang——error处理及panic、recover使用的正确姿势
异常就是程序出现了不正常的情况,会导致程序非正常停止,而异常处理就是针对非正常停止的情况,给出异常时的处理方式.语法错误不算异常体系中 error: error是一个接口,作用是返回程序异常的信息,e ...
- 在golang中defer、panic与recover的作用
package mainimport "fmt"func main() {var s strings = "panic"fmt.Printf("a的初 ...
最新文章
- 2023 USNews全美计算机研究生院排名发布!MIT、CMU分别称霸总榜和AI分榜
- Survey | 基于图卷积网络的药物发现方法
- maven Ubuntu14.04 安装
- linux下软件安装与yum源码库的设置
- 示廓灯——也就是前后位置等开启方法 还有该死的刮水器是长这样的
- 浅析Android中的消息机制
- 在iOS平台上使用TensorFlow教程(上)
- docker概念很乱?俺来替你理一下!
- 每天坚持不懈的写软文,得到的几点心得感悟
- x=a%pq与x=a%p,x=a%q的关系(pq互质)
- Python获取代理IP地址
- [转载]ASP.NET 格式化字符串
- 个人宏工作簿PERSONAL.XLSB 保存位置 启动加载项
- Problem D. Nothing is Impossible
- springboot学习笔记-5 springboot整合shiro
- JavaScript Oriented[探究面向对象的JavaScript高级语言特性]
- bzoj3944 Sum
- Android Studio failed to resolve:com.android.support.appcompat-v7:28+ 报错
- paip.没有源码的情况下更改ASP.net ASPX页
- 用python做归结演绎推理_python基础归结