包的使用

go语言中的包

一个目录下的统计文件归属一个包,package的声明要一致

package声明的包和对应的目录名可以不一致,但习惯上还是可以写成一直的

包可以嵌套

同包下的函数不需要导入包,可以直接使用

main包,main函数所在的包,其他包不可以引用

点操作
import (
    . "fmt"
)

func main(){
    println("haha") //使用了点可以直接省略前面的包名
}

起别名

import (
    p1 "fmt"
) //使用时,别名操作,调用包函数前缀变成了我们的别名

func main(){
    p1.println("haha")
}
_操作,如果仅仅需要导入包时执行初始化操作,并不需要使用哦那个包内的其他函数,常量等资源,则可以在导入包时,匿名导入
import (
    "database/sql"
    _ "github.com/ziutek/mymysql/godrv"
)
// _操作其实是引入该包,而不直接使用包里面的函数,而是调用了该包的init函数,使用_作为包的别名,会仅仅执行init()

init()函数按照包的导入顺序执行

import (
    "package1"
    "package2"
) //这里先执行package1的init函数,再执行packege2的init函数

同一个包下 将文件名按照字符串进行排休,之后顺序调用各个文件中的init()函数





原文地址:https://www.cnblogs.com/hualou/p/12069696.html