接口

接口 interface{} 作为 Go 语言类型系统中重要的一员,从语义上规定了一组方法集合,
只要某个类型实现了这一组方法,则这些类型都可以视为同一类型参数进行传递。
尽管这个理念与鸭子类型(Duck typing)所定义的类似,一个常见的错误观点便是 Go
是一种支持鸭子类型的语言。事实上,鸭子类型强调的是类型的运行时特性而非编译期特性。
不巧,Go 语言中的 interface{} 恰好只是一种编译期特性,所以 Go 的类型系统
应该被严谨的描述为结构化类型系统(Structural Type System)。

进一步阅读的参考文献

最后编辑: kuteng  文档更新时间: 2021-10-19 14:31   作者:kuteng