跳到主要内容

接口

一、接口基础

1.1 接口定义

  • 接口概念
  • 接口声明
  • 接口方法集

1.2 接口实现

  • 隐式实现
  • 多态实现
  • 空接口

1.3 接口使用

  • 接口变量
  • 类型断言
  • 类型选择(Type Switch)

二、接口特性

2.1 空接口 interface

  • 空接口概念
  • 空接口应用
  • 空接口类型断言

2.2 接口组合

  • 接口嵌入
  • 接口组合规则
  • 多接口实现

2.3 接口值

  • 接口内部结构
  • 接口动态类型和值
  • nil 接口值

2.4 接口比较

  • 接口相等性
  • nil 接口
  • 包含 nil 指针的接口

三、常用标准接口

3.1 Stringer 接口

3.2 error 接口

3.3 Reader/Writer 接口

3.4 其他常用接口

四、接口设计原则

4.1 接口隔离

  • 小接口原则
  • 接口定义时机
  • io 标准库设计

4.2 接口命名规范

4.3 接口 vs 抽象类型

4.4 接口反模式

五、接口高级应用

5.1 类型断言

  • 安全断言
  • 断言返回值
  • 断言panic

5.2 类型选择

  • type switch 语法
  • 多类型匹配
  • 类型判断

5.3 接口断言

5.4 接口与反射