package main
import "fmt"
/*
需求:用多态来模拟实现,将移动硬盘或者U盘插到电脑上进行读写数据
*/
type USB interface {
Read() //读
Write() //写
}
// 移动硬盘
type MoveDisk struct {
}
func (m *MoveDisk) Read() {
fmt.Println("使用移动硬盘读取数据")
}
func (m *MoveDisk) Write() {
fmt.Println("使用移动硬盘写入数据")
}
// U盘
type UDisk struct {
}
func (u *UDisk) Read() {
fmt.Println("使用U读取数据")
}
func (u *UDisk) Write() {
fmt.Println("使用U盘写入数据")
}
// 模拟方法
func UseUSB(u USB) {
u.Read()
u.Write()
}
// 测试
func main() {
UseUSB(&MoveDisk{})
UseUSB(&UDisk{})
}


发布评论