接口
# 接口定义
接口是一个或多个方法签名的集合,任何类型的方法集中只要拥有与之对应的全部方法,就表示它“实现”了该接口,无须在该类型上显示添加接口声明。
所谓对应方法,是指有相同名称、参数列表(不包括参数名)以及返回值。当然,该类型还可以有其他方法。
- 接口命名习惯以er结尾,结构体。
- 接口只有方法签名,没有实现。
- 接口没有数据字段。
- 可在接口中嵌入其他接口。
- 类型可实现多个接口。
type Stringer interface {
String() string
}
type Printer interface {
Stringer
Print()
}
type User struct {
id int
name string
}
func (self *User) String() string {
return ""
}
func (self *User)Print() {
return
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
上次更新: 2023/01/11