鸭子类型其实就可以简单理解为
来源:4-14 本章小结

慕标9282405
2022-07-20
鸭子类型其实就可以简单理解为,解释性语言不用管变量类型,所以定义函数的时候不用管他什么类型,然后直接调用他的函数就行了,但是编译性语言需要做类型检查,所以他就必须强制继承
写回答
1回答
-
bobby
2022-07-21
前面是对的,但是 “但是编译性语言需要做类型检查,所以他就必须强制继承”这句话不准确, java中必须这样强制继承 比如 A继承了B, 那么A类型的值可以赋值给一个B变量,但是在go中就不是这样, 比如你定义一个类型 C(这里指接口,接口也是类型), 然后 D去实现了这个C的所有方法,不需要D去说“我实现了C的所有接口”, 你直接把 D类型的变量赋值给C类型的变量就行了,不需要显示继承,这个就是鸭子类型,鸭子类型的思想充斥着整个go语言
00
相似问题