1. 概念
接口是一个或多个方法签名的集合,只有方法声明,没有实现。
只要某个类型拥有该接口的所有方法签名,即算实现了该接口,无需显式声明了哪个接口,这称为 Structural Typing
。
接口也是一种类型,它是一种抽象类型,空接口 interface {}
类似于 NSObject
这样的万物之主,虽然 Go
中是没有 class
的概念,但 interface
实现了继承多态的效果。
2. 使用
样例1:
1 | package main |
样例2:
1 | package main |