【golang学习笔记】包(package)的使用

Go语言的包和文件夹一一对应,源码复用建立在包基础之上。Go语言的入口main()函数所在的包叫main,如果main包想使用别的包也必须进行引用。
go语言给我们提供了很多的内置包,如fmt,os,io等。
任何源代码文件必须属于某个包,同时源码文件的第一行有效代码必须是 package pacakgeName 语句,声明自己所在的包。

包的基本概念

包借助了目录树的组织形式,一般包名就是目录名(可以不同)。
包的定义不包括目录路径,在引用时一般会使用全路径引用。比如:package c,引入包时 import "a/b/c"

习惯用法:

  • 包名一般小写,使用一个简短且有意义的名称
  • 包名一般要和所在目录同名,包名中不能包含-等特殊符号。
  • 包名一般使用域名作为目录名称,这样能保证包名的唯一性。
  • main包为应用程序的入口包,编译不包含main包的源码文件时不会得到可执行文件
  • 一个文件夹下的所有源码文件应该属于同一个包,同一个包下的源码文件不能放在多个文件夹下

包的导入

import "包的路径"

注意事项:

  • import导入语句通常放在源码文件开头包声明语句的下面
  • 包名需要用双引号括起来
  • 是从GOPATH/src/后开始计算的,使用/进行路径分隔

单行导入

import "包1的路径"
import "包2的路径"

例如:

import "fmt"
import "os"

多行导入

   "包1的名称"
   "包2的名称"

例如:

import (
   "fmt"
   "os"
)

包的导入路径

分为两种,全路径导入和相对路径导入

全路径导入

绝对路径就是GOTROOT/src/GOPATH/src后面包的存放地址

import "database/sql"
import "database/sql/driver"

这两个包都位于GOROOT/src

相对路径导入

只能导入GOPATH下的包,标准包的导入只能使用全路径导入。
比如b和a在同一个目录下

//相对路径导入
import "../a"

包的引用格式

有以下四种:

  • 标准引用格式
  • 自定义别名引用格式
  • 省略引用格式
  • 匿名引用格式

标准引用格式

import "fmt"
使用fmt.作为前缀来引用包中的方法
例如:

package main

import "fmt"

func main() {
   
   fmt.Println("hello")
}

自定义别名引用格式

可以为包设置别名
import F "fmt"
其中F就是包fmt的别名,使用时可以用别名替代

例如:

package main

import F "fmt"

func main() {
   
   F.Println("hello")
}

省略引用格式

import . "fmt"
相当于把fmt包直接合并到当前程序中。

例如:


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Vivien_o.O

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值