NotePublic/Software/Development/Language/Go/Basic/Golang_的命名规范及大小写的访问权限.md

976 B

Golang 的命名规范及大小写的访问权限

  1. golang 的命名需要使用驼峰命名法,且不能出现下划线
  2. golang 中根据首字母的大小写来确定可以访问的权限。无论是方法名、常量、变量名还是结构体的名称,如果首字母大写,则可以被其他的包访问;如果首字母小写,则只能在本包中使用。可以简单的理解成,首字母大写是公有的,首字母小写是私有的。
  3. 结构体中属性名的大写

如果属性名小写则在数据解析(如 json 解析 , 或将结构体作为请求或访问参数)时无法解析

type User struct {
    name string
    age  int
}

func main() {
    user:=User{"Tom",18}
    if userJSON,err:=json.Marshal(user);err==nil{
        fmt.Println(string(userJSON))   // 数据无法解析
    }
}

如上面的例子,如果结构体中的字段名为小写,则无法数据解析。所以一般建议结构体中的字段大写