首字母大写,代表对外部可见,首字母小写代表对外部不可见,适用于所有对象,包括函数、方法
看json的例子:
package main
import (
"github.com/gin-gonic/gin/json"
"fmt"
)
type Aa struct{
x string
y string
}
type Bb struct{
X string
y string
}
type Cc struct{
X string
Y string
}
type Dd struct{
X string `json:"xx"`
Y string `json:"yy"`
}
func main(){
// 属性名是小写开头的
aa:=Aa{"sff", "ffg"}
a,_:=json.Marshal(aa)
fmt.Println("Aa:属性名是小写开头的")
fmt.Println(string(a))
// 属性名是一个大写开头,一个小写开头的
bb:=Bb{"sff", "ffg"}
b,_:=json.Marshal(bb)
fmt.Println("Bb:属性名是一个大写开头,一个小写开头的")
fmt.Println(string(b))
// 属性名是大写开头的
cc:=Cc{"sff", "ffg"}
c,_:=json.Marshal(cc)
fmt.Println("Cc:属性名是大写开头的")
fmt.Println(string(c))
// 添加json小名
dd:=Dd{"sff", "ffg"}
d,_:=json.Marshal(dd)
fmt.Println("Dd:添加json小名")
fmt.Println(string(d))
}
结果: