package builtin
type error interface {
Error() string
}
######################
error接口定义
package errors
// New returns an error that formats as the given text.
// Each call to New returns a distinct error value even if the text is identical.
func New(text string) error {
return &errorString{text}
}
// errorString is a trivial implementation of error.
type errorString struct {
s string
}
func (e *errorString) Error() string {
return e.s
}
######################################################
1.定义一个包含一个字符串的类errorString,并实现erro接口方法
2.创建一个errorString对象
package http
var (
ErrBodyNotAllowed = errors.New("http: request method or response status code does not allow body")
ErrHijacked = errors.New("http: connection has been hijacked")
ErrContentLength = errors.New("http: wrote more than the declared Content-Length")
ErrWriteAfterFlush = errors.New("unused")
)
########################################################################################################
erro使用:
直接使用errors包的New方法创建