go语言给结构体绑定方法

定义结构体person,里面有一个字段Name。因为person首字母小写,没有暴露,所以定义函数NewPerson,返回一个person指针。

go 复制代码
package test_utils
import (
	"fmt"
)

type person struct{
	Name string
}
func (p person) Test(){
	fmt.Println("Hello",p.Name)
}

func NewPerson(n string) *person{
	return &person{n}
}

调用NewPerson函数返回person指针,调用person结构体绑定的Test函数。

go 复制代码
package main
import (
	"fmt"
	"test_utils"
)

func main(){
	p:=test_utils.NewPerson("Tom")
	p.Test()
	fmt.Println(*p)

}
相关推荐
前端小万1 分钟前
想做个人副业别乱买服务器!我的 5 个月真实开销分享
前端·后端·github
wangchunyu1149 分钟前
JAVA 类加载机制与双亲委派模型
java·开发语言
小蒜学长23 分钟前
基于 Spring Boot 的英语单词背诵系统的设计与实现(代码+数据库+LW)
java·数据库·spring boot·后端
用户693717500138424 分钟前
我买的电视,我还不能研究它吗?
前端·后端·ai编程
lambo mercy31 分钟前
持久化01——线程级持久化
java·开发语言·jvm
CoderYanger33 分钟前
Java EE 进阶:5. Spring IoC&DI(第一弹):Spring IoC
java·开发语言·spring boot·spring·面试·职场和发展·java-ee
真上帝的左手41 分钟前
2. 编程语言-JavaScript
开发语言·javascript
zhanghaha13141 小时前
C# 系列教程_1 基础语法篇(面向新手系统教程)
开发语言·c#
利威尔xu1 小时前
RAG 检索面试十连问:召回率从 92% 掉到 61%,答案句被拦腰截断怎么排查
人工智能·后端·大模型·向量数据库·rag
FungLeo1 小时前
成为全栈·Go 后端篇·契约一致性与差分测试:两套实现如何互相校验
golang·node.js·go·合约测试·差分测试·成为全栈·api兼容