## 程序结构 - 包声明 - 引入包 - 函数 - 变量 - 语句 & 表达式 - 注释 以实际代码进行讲解: ``` /* 这是包声明 */ package main /* 这是引入包 */ import "fmt" /* 这是函数 */ func main() { /* 这是变量 */ str := "hello word" /* 这是语句 */ fmt.Println(str) } ``` - 第一行代码 package main 定义了包名。你必须在源文件中非注释的第一行指明这个文件属于哪个包。 > 每个 Go 应用程序都包含一个名为 main 的包 - import "fmt" 告诉 Go 编译器这个程序需要使用 fmt 包 - func main() 是程序开始执行的函数。main 函数是每一个可执行程序所必须包含的,一般来说都是在启动后第一个执行的函数。 >如果有 init() 函数则会先执行init()函数 - go语言中注释 单行用:// ,或者 /\*...*/ ```go func main() { // str := "hello word" fmt.Println(str) } ``` - go语言中一行代表一个语句结束。每个语句不需要像 C 家族中的其它语言一样以分号分号(;) 结尾 **其他约定** - 大写字母开头的变量是可导出的,即其他包可以读取,是公用变量;小写字母开头的不可导出,是私有变量。 - 大写字母开头的函数也是一样,相当于class中带public关键词的公有函数;小写字母开头就是有private关键词的私有函数