每个 Go 程序都是由一些包组成的。

程序从 main 包开始执行。

/_src/tour/packages.go
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
package main

import (
    "fmt"
    "math/rand"
)


func main() {
    fmt.Println("My favorite number is", rand.Intn(10))
}

在这个程序,通过 import 导入两个包, fmtmath/rand (包路径)。

按照惯例,包名与包路径最后部分相同。 例如, math/rand 包中的源码文件都以 package rand 语句开头。

import语句

Go 通过 import 语句引入包并在代码中使用。

import 语句有两种不同的写法,上面例子是其中的一种写法—— 批量导入 ; 第二种则是分成多个语句:

import "fmt"
import "math"

两种写法虽然没有实质区别,还是 推荐采用批量写法 ,这是 最佳风格

名字导出

Go 语言,以大写字母开头的名字就会被 导出 ( exported )。 举例, Pizza 就是一个导出名字, math 包中的 Pi 也是。

/_src/tour/exported-names.go
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
 package main


 import (
     "fmt"
     "math"
 )


 func main() {
     fmt.Println(math.Pi)
 }

相反, pizzapi 由于不是大写字母开头,因此不会被导出。

一个包导入后,只能引用到导出名字。 其他任何非导出名字在包外是没有办法访问到的(不可见)。

下一步

下一节 我们一起来看看 Go 语言 函数

订阅更新,获取更多学习资料,请关注我们的 微信公众号

../_images/wechat-mp-qrcode.png

小菜学编程

微信打赏