1. 接口的定义
接口是和调用方的一种约定,它是一个高度抽象的类型,不用和具体的实现细节绑定在一起。接口要做的是定义好约定,告诉调用方自己可以做什么,但不用知道它的内部实现,这和我们见到的具体的类型如 int
、map
、slice
等不一样。
接口的定义和结构体稍微有些差别,虽然都以 type
关键字开始,但接口的关键字是 interface
,表示自定义的类型是一个接口。
也就是说 person
是一个接口,它有两个方法 sayName() string
和 sayAge() int
,整体如下面的代码所示:
type person interface {
sayName()