-
声明结构体
type 结构体名称 struct{ 属性名 属性类型 属性名1 属性类型 属性名2 属性类型 属性名3 属性类型 }
-
定义的方法和结构体进行绑定
// 声明结构体 type Profile struct{ name string age int } // 声明方法和结构体绑定 和普通函数有点区别 func(profile Profile) FmtProfile(){ fmt.Printf("name:%s\n",profile.name) } // 将age+1操作 func(profile *Profile) increase_age(){ profile.age += 1 } // 主方法 func main(){ // 实例化 person := Profile{name:"小明",age:25} // 调用FmtProfile方法 person.FmtProfile() // 年龄+1 person.increase_age() }
-
结构体实现
继承
// 声明结构体 // 公司 type Company struct{ name string addr string } // 个人介绍 type Profile struct{ name string age int mother *Profile company Company // 实现`继承` } // 声明方法和结构体绑定 和普通函数有点区别 func(profile Profile) FmtProfile(){ fmt.Printf("名称为:%s\n",profile.name) fmt.Printf("公司名称:%s\n",profile.company.name) fmt.Printf("公司地址:%s\n",profile.company.addr) } // 主方法 func main(){ // 实例化公司 company := Company{name:"趣味指数",addr:"北京市朝阳区"} // 实例化 person := Profile{name:"小明",age:25,company:company} // 调用FmtProfile方法 person.FmtProfile() }
相关文章
- 04-08go语言结构体
- 04-08Go语言开发 Eclipse插件安装
- 04-08go语言风格培训
- 04-08GO语言(一)G语言自虐
- 04-08模块三 GO语言实战与应用-原子操作(上)
- 04-08结构体变量的首地址获取注意事项
- 04-08STM32个人学习记录(3)库函数过渡(PC13led灯寄存器地址封装版本、结构体版本)
- 04-08go语言基础之函数只有一个返回值
- 04-08关于结构体的PPT
- 04-08Swift学习——A Swift Tour 枚举和结构体