Go 程序的一般结构: basic_structure.go
// 当前程序的包名 package main // 导入其他包 import . "fmt" // 常量定义 const PI = 3.14 // 全局变量的声明和赋值 var name = "gopher" // 一般类型声明 type newType int // 结构的声明 type gopher struct{} // 接口的声明 type golang interface{} // 由main函数作为程序入口点启动 func main() { Println("Hello World!") }
Go 程序是通过 package 来组织的。
只有 package 名称为 main 的源码文件可以包含 main 函数。
一个可执行程序有且仅有一个 main 包。
通过 import 关键字来导入其他非 main 包。
可以通过 import 关键字单个导入:
import "fmt" import "io"
也可以同时导入多个:
import ( "fmt" "math" )
例如:
package main import ( "fmt" "math" ) func main() { fmt.Println(math.Exp2(10)) // 1024 }
使用 <PackageName>.<FunctionName> 调用:
package 别名: // 为fmt起别名为fmt2 import fmt2 "fmt"
省略调用(不建议使用):
// 调用的时候只需要Println(),而不需要fmt.Println() import . "fmt"
前面加个点表示省略调用,那么调用该模块里面的函数,可以不用写模块名称了:
import . "fmt" func main (){ Println("hello,world") }
通过 const 关键字来进行常量的定义。
通过在函数体外部使用 var 关键字来进行全局变量的声明和赋值。
通过 type 关键字来进行结构(struct)和接口(interface)的声明。
通过 func 关键字来进行函数的声明。
可见性规则
Go语言中,使用大小写来决定该常量、变量、类型、接口、结构或函数是否可以被外部包所调用。
函数名首字母小写即为 private :
func getId() {}
函数名首字母大写即为 public :
func Printf() {}