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...)
}