包

包 属于 Go

1 个练习

关于 包

在 Go 中,应用是按包来组织的。一个包就是位于同一个文件夹中的一组源文件。同一个文件夹里的所有源文件,文件顶部都必须使用相同的包名。按照惯例,包的名称与它所在的文件夹相同。

package greeting

Go 自带一个内容丰富的标准库,其中的包可以通过 import 关键字在你的程序中使用。标准库中的包用它们的名字来导入。

package greeting

import "fmt"

把多个包放进括号里,就可以一次导入它们。

package greeting

import (
    "errors"
    "fmt"
)

第三方包通过其所在位置的 URL 来导入。导入时还可以给包起一个别名,用来避免包名冲突:

package greeting

import (
	"errors"

	errs "github.com/pkg/errors"
)

导入之后,就用包名或别名来引用这个包:

// using the internal errors package
errors.New("Connection not established")

// using the errors package located at github.com/pkg/errors by alias
errs.New("Connection not established")

一个条目能否被其他包中的代码调用,取决于它是如何声明的。要让一个函数、类型、变量或常量在外部可见(称为 exported),名字就必须以大写字母开头。这类似于 Java 等其他编程语言使用 public 和 private 这类访问修饰符的做法。

package greeting

// Hello is a public function (callable from other packages).
func Hello(name string) string {
    return "Hello " + name
}

// hello is a private function (not callable from other packages).
func hello(name string) string {
    return "Hello " + name
}

自定义 struct 类型中的字段名也是如此:以大写字母开头的字段名在外部可见,以小写字母开头的不行。

通过 GitHub 编辑 该链接会在新窗口或标签页中打开

学习 包

练习已锁定

再解锁 1 个练习即可练习 包