Golang入门到项目实战 | golang包

Posted 一个热爱编程的通信人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Golang入门到项目实战 | golang包相关的知识,希望对你有一定的参考价值。

包可以区分命名空间(一个文件夹中不能有两个同名文件),也可以更好的管理项目。go中创建一个包,一般是创建一个文件夹,在该文件夹里面的go文件中,使用package关键字声明包名称,通常,文件夹名称和包名称相同。并且,同一个文件下面只有一个包

创建包

  1. 创建一个名为dao的文件夹
  2. 创建一个dao.go文件
  3. 在该文件中声明包
package dao
import "fmt"

func Test1() 
    fmt.Println("test package")

导入包

要使用某个包下面的变量或者方法,需要导入该包,导入包时,要导入从GOPATH开始的包路径,例如,在service.go中导入dao包

package main

import "dao"

func main() 
    dao.Test1()

包注意事项

  • 一个文件夹下只能有一个package import后面的其实是GOPATH开始的相对目录路径,包括最后一段。但由于一个目录下只能有一个package,所以import一个路径就等于是import了这个路径下的包。 注意,这里指的是“直接包含”的go文件。如果有子目录,那么子目录的父目录是完全两个包。
  • 比如你实现了一个计算其package,名叫calc,位于calc目录下;但又想给别人一个使用范例,于是在calc下可以建个example子目录(calc/example),这个子目录里有个example.go(calc/example/example.go)。此时,example.go可以是main包,里面还可以有个main函数。
  • 一个package的文件不能在多个文件夹下 如果多个文件夹下有重名的package,它们其实是彼此无关的package。 如果一个go文件需要同时使用不同目录下的同名package,需要在import这些目录时为每个目录指定一个package的别名。

以上是关于Golang入门到项目实战 | golang包的主要内容,如果未能解决你的问题,请参考以下文章

Golang入门到项目实战 第一个golang应用

Golang入门到项目实战 golang匿名函数

Golang入门到项目实战 golang 函数

Golang入门到项目实战 golang方法

Golang入门到项目实战 golang for循环语句

Golang入门到项目实战 golang中的if语句