(18条消息) Go语言自学系列 | golang嵌套结构体_COCOgsta的博客-CSDN博客_golang 结构体嵌套



Go语言自学系列 | golang嵌套结构体

COCOgsta 于 2022-04-22 21:36:25 发布 300 收藏
分类专栏: 视频学习笔记 文章标签: golang

视频来源:B站《golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]》

一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持!

附上汇总贴:Go语言自学系列 | 汇总_COCOgsta的博客-CSDN博客


go语言没有面向对象编程思想,也没有继承关系,但是可以通过结构体嵌套来实现这种效果。

下面通过实例演示如何实现结构体嵌套,假如有一个人Person结构体,这个人还养了一个宠物Dog结构体

下面我们来看一下:

Dog结构体

  1. 1
    type Dog struct {
  2. 2
    name string
  3. 3
    color string
  4. 4
    age int
  5. 5
    }

Person结构体

  1. 1
    type person struct {
  2. 2
    dog Dog
  3. 3
    name string
  4. 4
    age int
  5. 5
    }

访问它们

  1. 1
    package main
  2. 2
  3. 3
    import "fmt"
  4. 4
  5. 5
    type Dog struct {
  6. 6
    name string
  7. 7
    color string
  8. 8
    age int
  9. 9
    }
  10. 10
  11. 11
    type person struct {
  12. 12
    dog Dog
  13. 13
    name string
  14. 14
    age int
  15. 15
    }
  16. 16
  17. 17
    func main() {
  18. 18
    var tom person
  19. 19
    tom.dog.name = "花花"
  20. 20
    tom.dog.color = "黑白花"
  21. 21
    tom.dog.age = 2
  22. 22
  23. 23
    tom.name = "tom"
  24. 24
    tom.age = 20
  25. 25
  26. 26
    fmt.Printf("tom: %v\n", tom)
  27. 27
    }

运行结果

  1. 1
    [Running] go run "d:\SynologyDrive\软件开发\go\golang入门到项目实战\goproject\360duote.com\pro01\test.go"
  2. 2
    tom: {{花花 黑白花 2} tom 20}

yg9538 2022年7月22日 22:48 286 收藏文档