Errors(package)
error接口
- go语言跟其他编程语言不一样,其他编程语言的表示错误的方式很多种,可以通过返回值或者抛异常等方式来输出错误信息,例如php语言;但是go语言在错误处理方面,认为错误是预期处理,统一采用error类型的数据返回;而异常则认为是已知bug问题导致的,一个良好的程序是不应该发生panic异常;
- 内建error类型是个接口类型,内建的意思是error是个预定义的错误抽象数据类型,是属于系统级的,不需要引入任何包或者其他操作就可以直接使用的,类似int8类型
- 在buildin内建包里可以看到定义方式,包含单一方法Error(),用来输出错误信息
error接口源码
errors源码包
- 源码包文件列表
- 主要是errors.go文件
内部定义一个错误字符串的结构体(errorString),结构体成员s存储错误信息;并在*errorString结构体指针上实现error接口
提供一个New函数,通过传入字符串文本,返回*errorString结构体指针类型
使用方式案例
package main import ( "errors" "fmt" ) func main () { // 创建一个错误具体类型 err := errors.New("内存溢出") // 调用Error方法输出错误信息 fmt.Println(err.Error()) }
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: