课程关键词:Go语言开发 Go语言培训 老男孩Go语言
老男孩教育怎么样?老男孩有哪些课程?
1 全日制:Linux云计算运维、python全栈开发+人工智能、java全栈开发、大数据开发
适合于:0基础学习,对IT感兴趣,想要在IT行业发展的朋友们
2 周末班:MySQL数据库周末班,阿里云架构师、GO开发、python自动化开发、Linux云计算运维
适合于:本身IT行业内的朋友们,有一年以上行业经验
3 网络班:Linux云计算运维、python全栈开发+人工智能、Java全栈开发、大数据开发、MySQL数据库、阿里云架构师、GO开发、Linux架构师
内容取自于公众号:Go程序员开发
编写 Hello World
1、创建文件 hello.go,不写入任何内容。运行 go build hello.go 命令进行编译。将会输出如下错误:
can't load package: package main:
hello.go:1:1: expected 'package', found 'EOF'
因为Go语言中,所有文件*须隶属于某一个包。需要在文件的头部声明一个package name,其中package为关键字,name为包名。
2、在hello.go文件中添加一条语句,之后重新进行编译。
添加内容如下:
package main
执行编译,将会输出如下错误:
runtime.main_main·f: relocation target main.main not defined
runtime.main_main·f: undefined: "main.main"
因为Go程序启动时,需要在文件中有一个可标识入口。Go程序的入口函数是main函数。
3、在hello.go文件中添加另外一行,并且重试。
添加内容如下:
package main
func main(){}
执行运行命令 go run hello.go ,程序正确执行并很快就退出了。
到目前为止,我们已经创建了自己的一个程序。虽然没有功能,但是已经可以正常运行了。
4、我们继续添加功能,添加内容如下:
package main
func main(){
Println("hello world")
}
执行编译,将会输出如下错误:
1./hello.go:4:2: undefined: Println
因为Println函数存放在fmt包中。我们程序中没有主动引入fmt包,所以编译器报未定义错误。
如果我们需要使用这些包中的功能,首先需要import引入相应的包。包中的可导出组件可以通过 包名.组件名的方式进行调用。
函数Println和其它读写文本和字符的函数,都存放在一个叫做fmt的包中——formatting的缩写。
5、再添加几行代码,添加内容如下:
package main
import "fmt"
func main(){
fmt.Println("hello world")
}
执行 go run hello.go 命令,运行程序。运行结果如下:
hello world
Go 程序启动执行顺序如下:
按顺序导入所有被 main 包引用的其它包,然后在每个包中执行如下流程:
如果该包又导入了其它的包,则从一步开始递归执行,但是每个包只会被导入一次。
然后以相反的顺序在每个包中初始化常量和变量,如果该包含有 init 函数的话,则调用该函数。
在完成这一切之后,main 也执行同样的过程,后调用 main 函数开始执行程序。
更多培训课程,学习资讯,课程优惠等学校信息,请进入 北京老男孩教育 网站详细了解,免费咨询电话:400-998-6158