目录结构
----main
----------main.go
----test2
----------test2.go
test.go文件内容
package test2 type Car struct { Name string } type Test interface { Getname() string } func (car *Car) Getname() string { return car.Name }
package main import ( "../test2" ) func main() { } func t3() test2.Test { //如果实现方法的接收者为指针类型此处返回必须为指针类型(&),否则编译报错 //test2包中的Car实现了Test接口 return &test2.Car{Name:"BMW"} } func t4() test2.Test { //例如BigCar的Getname方法的接收者为值类型,return时候返回值类型 //BigCar也实现了Test接口 return BigCar{Name:"aa"} } type BigCar struct { Name string } func (bigcar BigCar) Getname() string { return bigcar.Name }