go语言定义结构体 go语言结构体和复杂json( 四 )


结构体标签(Tag)
Tag是结构体的元信息,可以在运行的时候通过反射的机制读取出来 。Tag在结构体字段的后方定义,由一对反引号包裹起来,具体的格式如下:
`key1:"value1" key2:"value2"`
结构体标签由一个或多个键值对组成 。键与值使用冒号分隔,值用双引号括起来 。键值对之间使用一个空格分隔 。注意事项:为结构体编写Tag时,必须严格遵守键值对的规则 。结构体标签的解析代码的容错能力很差,一旦格式写错,编译和运行时都不会提示任何错误,通过反射也无法正确取值 。例如不要在key和value之间添加空格 。
例如我们为Student结构体的每个字段定义json序列化时使用的Tag:
Golang入门到项目实战 | golang方法go语言没有面向对象的特性go语言定义结构体,也没有类对象的概念 。但是go语言定义结构体,可以使用结构体来模拟这些特性go语言定义结构体,我们都知道面向对象里面有类方法等概念 。我们也可以声明一些方法,属于某个结构体 。
Go中的方法,是一种特殊的函数,定义域struct之上(与struct关联、绑定) , 被称为struct的接受者(receiver) 。通俗的讲,方法就是有接收者的函数 。
语法格式如下go语言定义结构体:
mytype:定义一个结构体
recv:接受该方法的结构体(receiver)
my_method:方法名称
para:参数列表
return_type:返回值类型
从语法格式可以看出,一个方法和一个函数非常相似,多了一个接受类型 。
实例
运行结果
go语言定义结构体的介绍就聊到这里吧,感谢你花时间阅读本站内容 , 更多关于go语言结构体和复杂json、go语言定义结构体的信息别忘了在本站进行查找喔 。

推荐阅读