MST
星途 面试题库

面试题:Go语言中接口定义的基础规则

在Go语言里,接口定义有哪些基础规则?请举例说明如何定义一个简单接口以及实现该接口的结构体。
11.4万 热度难度
编程语言Go

知识考点

AI 面试

面试题答案

一键面试

接口定义基础规则

  1. 方法集合定义:接口定义了一个方法集合,实现该接口的类型必须实现这些方法。
  2. 隐式实现:Go语言中类型实现接口是隐式的,无需显式声明实现了哪个接口。只要类型实现了接口中的所有方法,就认为该类型实现了此接口。
  3. 接口可以嵌套:一个接口可以嵌入其他接口,形成更复杂的接口。

示例

定义简单接口

// 定义一个简单的接口
type Animal interface {
    Speak() string
}

实现该接口的结构体

// 定义一个结构体
type Dog struct {
    Name string
}

// Dog 结构体实现 Animal 接口的 Speak 方法
func (d Dog) Speak() string {
    return "Woof! My name is " + d.Name
}