Go基础
Go语言 程序结构
可见性## Go 语言的基础组成 - 包声明 - 引入包 - 函数 - 变量 - 语句 & 表达式 - 注释 ```go package main //包声明 import "fmt" //引入包 func main() { //定义函数 {不能单独放一行 var i int = 5 //定义变量 if (i > 5) { //表达式 {不能单独放一行 fmt.Println("Hello, World!") //语句 } } ``` ## 包和文件 Go语言中的包和其他语言的库或模块的概念类似,目的都是为了支持模块化、封装、单独编译和代码重用。一个包的源代码保存在一个或多个以.go为文件后缀名的源文件中,通常一个包所在目录路径的后缀是包的导入路径;例如包gopl.io/ch1/helloworld对应的目录路径是$GOPATH/src/gopl.io/ch1/helloworld。 你必须在源文件中非注释的第一行指明这个文件属于哪个包,如:package main。package main表示一个可独立执行的程序,每个 Go 应用程序都包含一个名为 main 的包。 ## 引入包 - 单独引入 ```go import "fmt" import "os" ``` - 多个一起引入 ```go import ( "fmt" "os" "strconv" "gopl.io/ch2/tempconv" ) ``` - 引入的包必须要在程序中使用,否则会编译失败。 ## 包的初始化 对于在包级别声明的变量,如果有初始化表达式则用表达式初始化,还有一些没有初始化表达式的,例如某些表格数据初始化并不是一个简单的赋值过程。在这种情况下,我们可以用一个特殊的init初始化函数来简化初始化工作。每个文件都可以包含多个init初始化函数 ```go func init() { /* ... */ } ``` 这样的init初始化函数除了不能被调用或引用外,其他行为和普通函数类似。在每个文件中的init初始化函数,在程序开始执行时按照它们声明的顺序被自动调用。 ## 声明 声明语句定义了程序的各种实体对象以及部分或全部的属性。Go语言主要有四种类型的声明语句:var、const、type和func,分别对应变量、常量、类型和函数实体对象的声明。 ## main()函数 func main() 是程序开始执行的函数。main 函数是每一个可执行程序所必须包含的,一般来说都是在启动后第一个执行的函数(如果有 init() 函数则会先执行该函数)。 ## 命名 Go语言中的函数名、变量名、常量名、类型名、语句标号和包名等所有的命名,都遵循一个简单的命名规则: - 一个名字必须以一个字母(Unicode字母)或下划线开头, - 后面可以跟任意数量的字母、数字或下划线, - 严格区分大小写。 名字的长度没有逻辑限制,但是Go语言的风格是尽量使用短小的名字,对于局部变量尤其是这样;你会经常看到i之类的短名字,而不是冗长的theLoopIndex命名。通常来说,如果一个名字的作用域比较大,生命周期也比较长,那么用长的名字将会更有意义。 在习惯上,Go语言程序员推荐使用 驼峰式 命名,当名字由几个单词组成时优先使用大小写分隔,而不是优先用下划线分隔。 ## 标识符可见性 当标识符(包括常量、变量、类型、函数名、结构字段等等)以一个大写字母开头,如:Group1,那么使用这种形式的标识符的对象就可以被外部包的代码所使用(客户端程序需要先导入这个包),这被称为导出(像面向对象语言中的 public);标识符如果以小写字母开头,则对包外是不可见的,但是他们在整个包的内部是可见并且可用的(像面向对象语言中的 protected )。
顶部
收展
底部
[TOC]
目录
Go语言 简介
Go语言 项目结构
Go语言 程序结构
Go语言 流程控制
Go语言 变量常量
相关推荐
Go数据类型
Go函数
Go面向对象
Go并发编程
Go数据操作