Go语言结构体(struct)
Go 语言通过用自定义的方式形成新的类型,结构体是类型中带有成员的复合类型。Go 语言使用结构体和结构体成员来描述真实世界的实体和实体对应的各种属性。
Go 语言中的类型可以被实例化,使用
结构体成员是由一系列的成员变量构成,这些成员变量也被称为“字段”。字段有以下特性:
Go 语言的结构体与“类”都是复合结构体,但 Go 语言中结构体的内嵌配合接口比面向对象具有更高的扩展性和灵活性。
Go 语言不仅认为结构体能拥有方法,且每种自定义类型也可以拥有自己的方法。
Go 语言中的类型可以被实例化,使用
new
或&
构造的类型实例的类型是类型的指针。结构体成员是由一系列的成员变量构成,这些成员变量也被称为“字段”。字段有以下特性:
- 字段拥有自己的类型和值。
- 字段名必须唯一。
- 字段的类型也可以是结构体,甚至是字段所在结构体的类型。
关于 Go 语言的类(class)
Go 语言中没有“类”的概念,也不支持“类”的继承等面向对象的概念。Go 语言的结构体与“类”都是复合结构体,但 Go 语言中结构体的内嵌配合接口比面向对象具有更高的扩展性和灵活性。
Go 语言不仅认为结构体能拥有方法,且每种自定义类型也可以拥有自己的方法。
- 本章内容:
- 1. Go语言结构体定义
- 2. Go语言实例化结构体——为结构体分配内存并初始化
- 3. Go语言初始化结构体的成员变量
- 4. Go语言构造函数
- 5. Go语言方法和接收器
- 6. Go语言为任意类型添加方法
- 7. Go语言使用事件系统实现事件的响应和处理
- 8. Go语言类型内嵌和结构体内嵌
- 9. Go语言结构体内嵌模拟类的继承
- 10. Go语言初始化内嵌结构体
- 11. Go语言内嵌结构体成员名字冲突
- 12. Go语言使用匿名结构体解析JSON数据
- 13. Go语言垃圾回收和SetFinalizer
- 14. Go语言使用事件系统实现事件的晌应和处理
- 15. Go语言将结构体数据保存为JSON格式数据
- 16. Go语言链表操作
- 17. Go语言数据I/O对象及操作