概念
结构体是将零个或者多个任意类型的命名变量组合在一起的聚合数据类型,每个变量都叫做结构体的成员。
在Java语言中,对应的概念则是类,这是Java面向对象编程思想的重要体现。
细节
-
先看看Go语言中的结构体:
# 定义一个雇员的结构体
type Employee struct{
ID int
Name string
Address string
Dob time.Time
Postion int
Salary int
ManagerID int
}
# 声明一个雇员类型的变量
var tom Employee
-
tom的每一个成员都需要通过点号来进行访问,如下所示:
tom.name
或者tom.Salary
-
获取成员变量的地址,然后通过指针来访问它:
posttion := &tom.Position
*position = "bob"+ *position
// 修改tom的成员属性
-
点号访问的方式,同样适用于结构体的指针上
var employeeOfTheMonth *Employee = &tom
employeeOfTheMonth.Position += "(proactive team player)"
上面最后一句代码等价于:
(*employeeOfT