美文网首页
Golang 接口(多态补充2)

Golang 接口(多态补充2)

作者: 邦_ | 来源:发表于2020-10-22 15:32 被阅读0次

package main

import (
    "fmt"
)

//空接口: 也是一个接口,但是该接口中没有任何的方法
//所以可以将任意类型作为该接口的实现

type A interface {
}

//1.定义一个接口
type USB interface {
    start()
    end()
}

//2.实现类
type Mouse struct {
    name string
}

func (m Mouse) start(){
    fmt.Println("开始方法")
}

func (m Mouse) end(){
    fmt.Println("结束方法")
}

type FlashDisk struct {
    name string
}
func (f FlashDisk) start(){
    fmt.Println("开始方法,可以进行数据存储")
}

func (f FlashDisk) end(){
    fmt.Println("结束数据存储")
}

//空接口:理解为代表了任意类型
func test5(a A)  {

}
//将匿名空接口作为参数:表示该函数可以接受任意类型的数据
func test6(a interface{})  {

}


func main()  {

    var u1 USB//定义接口类型的变量
    u1 = Mouse{"鼠标"}  //创建实现类对象
    u1.start()
    fmt.Println(u1)

    var u2 USB
    u2 = FlashDisk{"闪存"}
    fmt.Println(u2)

}


相关文章

网友评论

      本文标题:Golang 接口(多态补充2)

      本文链接:https://www.haomeiwen.com/subject/dwxemktx.html