golang 怎么使用接口中声明的方法

发布时间 2023-09-24 18:55:23作者: Lucky小黄人^_^

假设你有一个golang 的 interface,里面声明了1个函数,怎么调用这个函数

type Man interface {
	Eat(ctx context.Context,  food string}) error
}

使用方式

创建结构体实现这个接口声明的方法,然后创建该结构体对象,调用方法

案例

首先,我们需要创建一个实现了这个接口的结构体:

type Student struct {
    // 需要填充结构体的属性。
}

// 确保 Student 实现了 Man 接口
func (stu *Student) Eat(ctx context.Context, food string) error {
    // 在这里实现你的函数逻辑
    fmt.Printf("煮%v, 开吃", food)
    return nil
}

然后,我们就可以创建这个结构体的实例并调用接口函数了:

func main() {
    // 创建 Student 结构体的实例
    student := &Student{}

    // 创建Context
    ctx := context.Background()
    err := student.Eat(ctx, "鱼肉")
	
    if err != nil {
        fmt.Println("eat failed:", err)
        return
    }
}