Errors(package)

error接口

  • go语言跟其他编程语言不一样,其他编程语言的表示错误的方式很多种,可以通过返回值或者抛异常等方式来输出错误信息,例如php语言;但是go语言在错误处理方面,认为错误是预期处理,统一采用error类型的数据返回;而异常则认为是已知bug问题导致的,一个良好的程序是不应该发生panic异常;
  • 内建error类型是个接口类型,内建的意思是error是个预定义的错误抽象数据类型,是属于系统级的,不需要引入任何包或者其他操作就可以直接使用的,类似int8类型
  • 在buildin内建包里可以看到定义方式,包含单一方法Error(),用来输出错误信息

error接口源码
Errors(package)

errors源码包

  1. 源码包文件列表

Errors(package)

  1. 主要是errors.go文件
  • 内部定义一个错误字符串的结构体(errorString),结构体成员s存储错误信息;并在*errorString结构体指针上实现error接口

  • 提供一个New函数,通过传入字符串文本,返回*errorString结构体指针类型
    Errors(package)

  • 使用方式案例

      package main
    
      import (       
          "errors"       
          "fmt"
      )
    
      func main () { 
    
          //  创建一个错误具体类型       
          err := errors.New("内存溢出")   
    
          //  调用Error方法输出错误信息       
          fmt.Println(err.Error())
      }
go
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!