【Golang系列】-结构体
2022-03-16
结构体
go语言没有面向对象的概念,但是可以使用结构体来实现,面向对象编程的一些特性,如:继承,组合等特性
结构体的定义:
结构体的抵不过一和类型定义类似,多了一struct关键字,语法:
type struct_variable_type struct{
nember definition
}
- type:结构体定义关键字
- struct_variable_type:结构体 类型名称
- struct:结构体定义关键字
- nember definition:成员定义
示例:
一个人的结构体
type Person struct{
id int
name string
age int
email string
}
相同类型的可以合并一行
type Person struct {
id, age int
name, email string
}
声明一个结构体变量
var tom Person
fmt.Println(tom)
kite := Person{}
fmt.Println(kite)
访问结构体成员
package main
import "fmt"
func main() {
type Person struct {
id, age int
name, email string
}
var tom Person
tom.id = 1
tom.name = "caolihui"
tom.age = 30
tom.email = "tom@mail.com"
fmt.Println(tom)
}
匿名结构体:
如果 结构体是临时使用,不用起名字可以直接使用
package main
import "fmt"
func main() {
var dog struct {
id int
name string
}
dog.id = 1
dog.name = "tom"
fmt.Println(dog)
}