教程 go tutorial

接口的定义

接口(interface)是一组方法签名的集合,定义对象的行为规范。

1. 定义接口

使用 interface 关键字定义接口类型:

go
type Speaker interface {
    Speak() string
}

`

接口中只包含方法签名,不实现具体方法。

2. 实现接口

任意类型只要实现接口中所有方法,即隐式实现该接口:

go
type Person struct {
    Name string
}

func (p Person) Speak() string {
    return "Hello, my name is " + p.Name
}

Person 类型自动实现了 Speaker 接口。

3. 接口变量

接口类型变量可以存储实现该接口的任意类型值:

go
var s Speaker
s = Person{Name: "Alice"}
fmt.Println(s.Speak())  // 输出:Hello, my name is Alice

接口实现多态,解耦代码依赖,提高灵活性。