请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

鸭子类型其实就可以简单理解为

鸭子类型其实就可以简单理解为,解释性语言不用管变量类型,所以定义函数的时候不用管他什么类型,然后直接调用他的函数就行了,但是编译性语言需要做类型检查,所以他就必须强制继承

正在回答 回答被采纳积分+3

1回答

bobby 2022-07-21 19:23:19

前面是对的,但是 “但是编译性语言需要做类型检查,所以他就必须强制继承”这句话不准确, java中必须这样强制继承 比如 A继承了B, 那么A类型的值可以赋值给一个B变量,但是在go中就不是这样, 比如你定义一个类型 C(这里指接口,接口也是类型), 然后 D去实现了这个C的所有方法,不需要D去说“我实现了C的所有接口”, 你直接把 D类型的变量赋值给C类型的变量就行了,不需要显示继承,这个就是鸭子类型,鸭子类型的思想充斥着整个go语言

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信