mirror of
https://github.com/unknwon/the-way-to-go_ZH_CN.git
synced 2025-11-13 09:16:10 +08:00
翻译11.12部分内容
This commit is contained in:
@@ -44,7 +44,7 @@ Go 语言中的接口都很简短,通常它们会包含 0 个、最多 3 个
|
||||
|
||||
第一个例子:
|
||||
|
||||
示例 11.1 interfaces.go:
|
||||
示例 11.1 [interfaces.go](examples/chapter_11/interfaces.go):
|
||||
|
||||
```go
|
||||
package main
|
||||
@@ -100,7 +100,7 @@ func main() {
|
||||
|
||||
扩展一下上面的例子,类型 `Rectangle` 也实现了 `Shaper` 接口。接着创建一个 `Shaper` 类型的数组,迭代它的每一个元素并在上面调用 `Area()` 方法,以此来展示多态行为:
|
||||
|
||||
示例 11.2 interfaces_poly.go:
|
||||
示例 11.2 [interfaces_poly.go](examples/chapter_11/interfaces_poly.go):
|
||||
|
||||
```go
|
||||
package main
|
||||
@@ -156,7 +156,7 @@ func main() {
|
||||
|
||||
下面是一个更具体的例子:有两个类型 `stockPosition` 和 `car`,它们都有一个 `getValue()` 方法,我们可以定义一个具有此方法的接口 `valuable`。接着定义一个使用 `valuable` 类型作为参数的函数 `showValue()`,所有实现了 `valuable` 接口的类型都可以用这个函数。
|
||||
|
||||
示例 11.3 valuable.go:
|
||||
示例 11.3 [valuable.go](examples/chapter_11/valuable.go):
|
||||
|
||||
```go
|
||||
package main
|
||||
|
||||
Reference in New Issue
Block a user