go重写

go语言实现继承,重写

月盾
以实际遇到过得情况为例,用户的数据结构中有类型为日期类型time.Time的createdAt属性,经过反复的格式化处理,在页面上输出的还是2017-05-31 06:49:09 +0800 CST这种格式,所以猜想日期类型是不能直接输出2017-05-31 06:49:09格式的,只能输出格式化后的字符串类型。于是利用go的继承将User的数据结构继承都UserPojo里,再单独对createdAt进行修改,重写为string类型。 package main import "fmt" import "time" type User struct { name string age int createdAt time.Time } type UserPojo struct { User createdAt string } func (user *User) getName(){ fmt.Println("获取用户名:", user.name) } func main() { user := new(User) user.name="张三" user.age=26 user.createdAt=time.Now() fmt.Println("user.createdAt",user.createdAt) userpj := new(UserPojo) userpj.User = *user userpj.