package
golang 的所有文件都需要指定其所在的包(package),包有两种类型,一种是 main 包,使用 package main 在代码的最前面声明。另外一种就是 非 main 包,使用 package + 包名 。main 包可以有唯一的一个 main 函数,这个函数也是程序的入口。也只有 main 包可以编译成可执行的文件。
规则
1.import 导入的是相对路径,非 package 名!
-
习惯上将 package 名和目录名保持一致,如实例中 package A 尽量在./A 文件夹下
-
代码中引用包方法 / 对象 / 变量时,如调用 package A 中的 a 函数,使用 A.a 而非目录名
-
同一目录下,所有源文件必须使用相同的包名,一个文件夹下只能有一个 package;如果多个文件夹下有同名 package,其实只是彼此无关的 package,如果需要同时使用不同目录下的同名 package,import 时需要为每个目录指定 package 别名:
-
同一 package 下不同文件间可以直接调用
-
大写字母开头的变量方法暴露到包外,包内大小写随意
-
多个 go 文件在 main 包下是无法相互调用的,需要使用 go run *.go 命令