一 接口概念
interface 类型可以定义一组方法,但是这些不需要实现。并且 interface 不能包含任何变量。到某个自定义类型(比如结构体 Phone)要使用的时候,再根据具体情况把这些方法写出来(实现)。
二 基本语法
1 接口里的所有方法都没有方法体,即接口的方法都是没有实现的方法。接口体现了程序设计的多态和高内聚低偶合的思想。
2 Golang 中的接口,不需要显式的实现。只要一个变量,含有接口类型中的所有方法,那么这个变量就实现这个接口。因此,Golang 中 没有 implement 这样的关键字。
三 接口使用的应用场景
1 要制作轰炸机、武装直升机,专家只需要把飞机需要的功能和规格定下来即可,然后让别人具体实现就可以了。
2 项目经理管理三个程序员,开发一个软件。为了控制和管理软件,项目经理可以定义一些接口,然后由程序员具体实现。