// 如果实现了接口里所有的方法,则为实现了改接口。否则没实现。。有点愚蠢
type Usb interface {
Start()
Stop()
}
type Phone struct {
}
type Camera struct {
}
// Phone 实现了Usb里定义的所有的方法
func (p Phone) Start() {
fmt.Println("手机 start")
}
func (p Phone) Stop() {
fmt.Println("手机 stop")
}
// Camera 实现了Usb里定义的所有的方法
func (p Camera) Start() {
fmt.Println("Camera start")
}
func (p Camera) Stop() {
fmt.Println("Camera stop")
}
type Computer struct {
}
func (c Computer) Work(usb Usb) {
usb.Start()
usb.Stop()
}
func main() {
computer := Computer{}
phone := Phone{}
camera := Camera{}
computer.Work(phone)
computer.Work(camera)
}
Golang接口
最新推荐文章于 2024-11-03 19:16:06 发布