哦,原来是这么回事:Golang 中的一些常识( 三 )
7. Goroutine 之间不能 Recover painc现象goroutine没有父子关系(创建应该不算父子吧) , 不能在一个go中 recover 另一个 go 的 panic
理解GPM模型在go的调度时没有上下级关系, 也没有跨goroutine的异常捕获机制 。
8. error 是一个实现了Error()string 方法的任意类型.现象error 被定义为 interface{ Error()string } , 只要实现该方法的类型 , 其值都可以认为是error
9. 是否实现某个interface的的判断是区别对待 *T 和 T 的现象一个接口实现必须实现接口定义的全部方法 , 使用 指针类型的receiver 和 值类型的 receiver 是两个不同的实现 。
解释*张三不吃香菜 , 不等于张三不吃香菜 。
type User interface {Eat(food interface{}) (bool, error)}type ZhangSan struct {Name string}// *ZhangSan 实现了 User 接口// 但是 ZhangSan 没有实现func (*ZhangSan) Eat(food interface{}) (bool, error) {if food == "香菜" {return false, nil}return true, nil}func userEat(u User,food string) (bool, error){return u.Eat(food)}func main() {someone := ZhangSan{Name: "张三"}// 这里 someone 是不能传递给 userEat 的// 因为 ZhangSan 这个结构没有实现 User 接口, 只能用--tt-darkmode-color: #FFFFFF;">总结以上就Go在日常使用过程中的基本点进行了一下总结 , 是golang日常使用过程中经常碰到的点 。 由于水平有限 , 如果存在某些表述不清楚的地方 , 可以一起讨论下 。
作者:保护我方李元芳 , 授权发布
链接:
【哦,原来是这么回事:Golang 中的一些常识】来源:掘金 著作权归作者所有 。 商业转载请联系作者获得授权 , 非商业转载请注明出处 。
文章插图
推荐阅读
- 富士康 拜腾再续“前缘”,原来是因为这个
- 原来这3种常见的充电方式,会导致手机电池续航变差!望相互转告
- 原来华为手机拍视频还能添加字幕,方法很简单,一学就会
- 原来华为手机隐藏扫描仪,3种方法,纸质档几秒电子化,一学就会
- 手机照片、视频怎样添加文字?原来很简单,4种方法一分钟搞定
- 把光刻机封锁当“摆设”?芯片新消息爆出!原来华为时刻准备着
- 微信最近很火的“圣诞帽头像”,原来这么简单,快学起来
- 把芯片封锁当“摆设”?华为3nm芯片曝光,原来华为时刻准备着
- 诬陷对手,甩锅员工,原来社交赛道的“球霸”是他?
- 原来微信长按2秒这么实用!能开启5个高级功能,涨知识了