# Error接口和错误处理
Go 语言中的错误处理与其他语言不太一样,它把错误当成一种值来处理,
更强调判断错误、处理错误,而不是一股脑的 catch 捕获异常。
### Error 接口
type error interface {
Error() string
}
### 创建错误
我们可以根据需求自定义 error,最简单的方式是使用`errors` 包提供的`New`函数创建一个错误
func New(text string) error
### 错误结构体类型
// OpError 自定义结构体类型
type OpError struct {
Op string
}
// Error OpError 类型实现error接口
func (e *OpError) Error() string {
return fmt.Sprintf("无权执行%s操作", e.Op)
}