Golang中本来没有类这个概念,但是可以通过结构体以及接口模拟实现出一个类。下面是简单的类的实现。
首先定义一个接口,例如以下我们定义一个汽车的接口类
type Car interface {
Run()
Sing()
}
该接口拥有两个方法,一个是Run() 一个是Sing()
接下来定义一个空结构体Taxi
type Taxi struct {
}
Taxi 是属于Car 类的,但是在此时,Taxi还与Car没有任何关联,所以接下来,创建Taxi的结构体方法继承Car接口的两个函数。
func (taxi *Taxi) Run(){
fmt.Println("Taxi run on the road")
}
func (taxi *Taxi) Sing(){
fmt.Println("Taxi sing didi")
}
这样相当于实现了类的概念,可以在main函数中实现以下调用
func main() {
var taxi Car
taxi = &Taxi{}
taxi.Sing()
taxi.Run()
}