Files
gopl-zh.github.com/ch7/ch7.md
Guo bdf5fdf226 修改:第七章介绍
接口是go语言中十分重要的一个概念,与其相关的介绍应该逻辑简单,通俗
易懂。原翻译有些生硬,不好理解。反而加重读者的阅读负担。
这里应该用流畅的语言重点介绍想法,而无需刻意追求严谨性。
所以对介绍做了一些修改。有了主要的想法,后续的理解的过程中会更有方
向。
2025-08-06 11:13:47 +08:00

1.1 KiB
Raw Blame History

第7章 接口

接口类型表达的是对其他类型行为的一种泛化或抽象。通过泛化,接口使我们能够编写更灵活、更适应变化的函数,因为它们不依赖于某个特定实现的细节。

许多面向对象的语言都有“接口”这一概念,但 Go 的接口之所以独特,是因为它们是隐式满足的。换句话说,一个具体类型不需要显式声明它实现了哪些接口;只要它拥有接口所需的方法,就自动被认为满足了该接口。这种设计让你可以为已有的具体类型创建新的接口,而不需要修改这些类型本身——这在处理你无法控制的外部包中定义的类型时特别有用

在本章我们会开始看到接口类型和值的一些基本技巧。顺着这种方式我们将学习几个来自标准库的重要接口。很多Go程序中都尽可能多的去使用标准库中的接口。最后我们会在§7.10看到类型断言的知识§7.13)看到类型开关的使用并且学到他们是怎样让不同的类型的概括成为可能。