两个不同文件定义的type userError没有理解
来源:8-5 服务器统一出错处理2

BskyRui
2018-04-23
type userError interface {
error
Message() string
}
type userError string
func (e userError) Error() string {
return e.Message()
}
func (e userError) Message() string {
return string(e)
}
而且为什么这里还可以
return userError(
fmt.Sprintf("path %s must start "+
"with %s",
request.URL.Path, prefix))
写回答
1回答
-
ccmouse
2018-04-24
他们都是小写的,放在不同的包里,不会冲突。如果同一个包,那是不可以的。
不过这边,从string来的userError实现了userError接口,虽然他们互相都看不到对方。因为go语言实现接口只要满足我们有接口规定的函数即可。342020-10-05
相似问题