Golang如何判断接口是否实现

Golang如何判断接口是否实现


package main

type people interface {
	getage() int
}

type stu struct {
	Age  int
	Name string
}

type staff struct {
	Age  int
	Name string
}

func (T *stu) getage() int {
	return T.Age
}

// 类型转换方式
// 判断方法 将空接口转为对应type指针,再转为接口,ide就能发现错误
// 改方法是编译时检查
var _ people = (*stu)(nil)
var _ people = (*staff)(nil)

// 声明的方式
// 直接new 的方式检查, 占内存, 编译时检查
var _ people = new(stu)
var _ people = new(staff)

posted @ 2022-09-06 13:56  Notomato  阅读(136)  评论(0)    收藏  举报