时间: 2020-09-3|71次围观|0 条评论


定义

把所有的具有共性的方法定义在一起,任何其他类型只要实现了这些方法就是实现了这个接口

举例

接口Phone, 有一个函数call

type Phone interface {    call()}

定义2个strct

type NokiaPhone struct {}type Samsung struct {}

实现接口中的call()函数

func (nokiaPhone NokiaPhone) call() {    fmt.Println("I'm NokiaPhone, call.....")}func (samsung Samsung) call() {    fmt.Println("I'm Sumsung, call........")}

测试

    var phone Phone    phone = new(NokiaPhone)    fmt.Printf("%p, %T", phone, phone)  // %p 输出指针地址,%T 输出类型    phone.call()    phone = new(Samsung)    phone.call()

输出

0x121bf38, *basicTest.NokiaPhoneI'm NokiaPhone, call.....I'm Sumsung, call........

注意:new 得到的是个指针

文章转载于:https://www.cnblogs.com/kaituorensheng/p/12241923.html

原著是一个有趣的人,若有侵权,请通知删除

本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自起风了,原文地址《Golang 接口
   

还没有人抢沙发呢~