第 20 课 go如何实现继承的 && 给引用模块起别名
golang语言中没有继承,但是可以依靠组合来模拟继承和多态。
package controllers import ( "encoding/json" md "gowebProject/models" // 给引用的模块起个别名 "github.com/astaxie/beego" ) type UserController struct { beego.Controller // 通过这种组合来实现继承 } func (c *UserController) Get() { var md.User // 使用别名md,引用gowebProject/models中的User
}
但是,这样模拟出来的继承是有局限的,也就是说:在需要多态的时候,需要小心。