1.Go內置關鍵字
go語言一共25個內置關鍵字,具體如下所示:
break default func interface select
case defer go map struct
chan else goto package switvh
const fallthrough if range type
countinue for import return var
2.Go註釋方法
1)// :單行註釋
2) /**/ :多行註釋
3.Go程序一般結構
文件結構:xxx.go
1)Go程序是通過package來組織的(與python類似)
2)只有package 名稱位main的包名可以保護main函數
3)一個可執行程序有且僅有一個main包
4)通過import關鍵字來導入其他非main包
5)通過const關鍵字來進行常量的定義
6)通過在函數體外部使用var關鍵字來進行全局變量的聲明與賦值
7)通過type關鍵字來進行結構(struct)或接口(interface)的聲明
8)通過func關鍵字來進行函數的聲明
代碼示例:(文件名:test.go)
//當前程序的包名
package main
//導入其他的包
import "fmt"
//常量的定義
const PI = 3.14
//全局變量的聲明與賦值
var name = "test"
//一般類型聲明
type newType int
//結構的聲明
type test_struct struct {
}
//接口的聲明
type test_inter interface {
}
//由main函數作爲程序的入口點啓動
func main() {
fmt.Println("hello word")
}
4.Go導入package的格式
1)單個導入:
import "fmt"
import "net"
import "io"
2)使用括號形式
import (
"fmt"
"net"
"io"
)
說明:
1)導入包後,就可以使用格式<PackageName>.<FuncName>來對包中的函數進行調用
2)如果導入之後未調用其中的函數或者類型將會報出編譯錯誤:
imported and not user:"未使用的包名稱"
5.package別名
當使用第三方包時,包名可能會非常接近或者相同,此時就可以使用別名來進行區別和調用
/*不使用別名*/
import (
"fmt"
)
fmt.Println("hello")
/*使用別名*/
import (
io "fmt"
)
io.Println("hello")
6.省略調用
import導入包名的時候可以使用一個點,這樣調用包內函數或者類型的時候就不用再增加包名了,例如
/*使用省略調用*/
import (
. "fmt"
)
Println("hello")
注意:
1)不建議使用省略調用,因爲這樣容易混淆,不同包內可能會出現同名的函數或者變量
2)不可以和別名同時使用
7.可見性規則
Go語言中,使用大小寫來決定該常量、變量、類型、接口、結構或函數是否可以唄外部包所使用:
根據約定,函數名首字母小寫即爲privat(不可被外部使用),例:
func getFied(v reflect.Value, i int) reflect {
……
}
函數名首字母大寫即爲public(外部可以調用)
func Printf(format string, a ...interface{}) (n int) {
return Fprintf(os.Stdout,format, a...)
}