博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Go语言中异常处理painc()和recover()的用法
阅读量:6395 次
发布时间:2019-06-23

本文共 692 字,大约阅读时间需要 2 分钟。

Go语言中异常处理painc()和recover()的用法

 

1、Painc用法是:用于抛出错误。Recover()用法是:将Recover()写在defer中,并且在可能发生panic的地方之前,先调用此defer的东西(让系统方法域结束时,有代码要执行。)当程序遇到panic的时候(当然,也可以正常的调用出现的异常情况),系统将跳过后面的代码,进入defer,如果defer函数中recover(),则返回捕获到的panic的值。

2、代码:

package mainimport "fmt"func main() {	fmt.Printf("hello world my name is %s, I'm %d\r\n", "songxingzhu", 26)	defer func() {		if err := recover(); err != nil {			fmt.Println("出了错:", err)		}	}()	myPainc()	fmt.Printf("这里应该执行不到!")}func myPainc() {	var x = 30	var y = 0	//panic("我就是一个大错误!")	var c = x / y	fmt.Println(c)}

 

3、执行结果:

 

Atom Runner: main.gohello world my name is songxingzhu, I'm 26出了错: runtime error: integer divide by zeroExited with code=0 in 1.667 seconds

  

 

转载地址:http://xorha.baihongyu.com/

你可能感兴趣的文章
llinux 基本命令 1
查看>>
windows与linux ping 显示的ip不一样
查看>>
cPP
查看>>
爬虫的知识点总结
查看>>
利用nginx反向代理,后端Web如何获取客户真实ip
查看>>
Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器(第6版)
查看>>
关于pos系统类型分析
查看>>
NDK官方开发指南翻译之 Toolchain
查看>>
什么是.Net Micro Framework平台移植--初步知识讲解
查看>>
C#.NET通用权限管理在DB2数据库上运行的脚本参考 - 通过程序将数据导入到目标数据库中...
查看>>
第一篇blog,祝我RP++...
查看>>
Linux内核——线程
查看>>
关于delphi点击webbrowser中任意一点的问题
查看>>
Mac安装多个python版本
查看>>
title及alt提示特效
查看>>
Essential Calculate计算控件全面介绍及下载
查看>>
.NET Core程序中使用User Secrets存储敏感数据
查看>>
Python3 解析路径
查看>>
查看端口是否被占用并关掉相应进程
查看>>
mysql5.6主从配置
查看>>