十、Go语言接口

十、Go语言接口

Go 语言提供了另外一种数据类型即接口,它把所有的具有共性的方法定义在一起,任何其他类型只要实现了这些方法就是实现了这个接口。

package main

import (
   "fmt"
)

//定义一个接口Phone,接口内有一个方法call()
type Phone interface {
   call()
}

type NokiaPhone struct {
}

//实现接口方法
func (nokiaPhone NokiaPhone) call() {
   fmt.Println("I am Nokia, I can call you!")
}

type IPhone struct {
}

//实现接口方法
func (iPhone IPhone) call() {
   fmt.Println("I am iPhone, I can call you!")
}

func main() {
   //定义一个phone类型的变量
   var phone Phone
   
   phone = new(NokiaPhone)
   phone.call()

   phone = new(IPhone)
   phone.call()

}

你可能感兴趣的:(十、Go语言接口)