go语言中实现getter和setter功能示例代码

2023-06-01 00:00:00 语言 代码 示例

因为go不提供自动getter和setter,所以Go程序员必须自己实现getter和setter功能函数。

下面我们来实现一下,在结构中设置和获取标识符值代码示例:

 package main

import (
"fmt"
)

type Person struct {
Name  string //导出标识符
email string //未导出的标识符...需要Set和Get方法处理
}

//set设置email
func (p *Person) SetEmail(email string) {
p.email = email
}

//get获取email
func (p Person) GetEmail() string {
return p.email
}

func main() {

employee := Person{}
//employee := new(Person) //新对象


fmt.Println(employee)

//通过 SetEmail 方法将数据设置为私有变量

employee.SetEmail("[email protected]")

employee.Name = "houtizong"


fmt.Println(employee)

//通过 GetEmail 方法从私有变量中检索数据
fmt.Println(employee.GetEmail())

fmt.Println(employee.Name)

}

输出 :

{ }
{houtizong [email protected]}
[email protected]
houtizong

相关文章