文章目录
hello world
package main //包名
import "fmt" //导入fmt库
func main(){
fmt.Println("hello world")
}
由HelloWorld引出的go语言特性:
-
Package
- 每个文件夹内仅能有一个package名,但是该名可以与文件夹名不同
- 每个应用程序应该有一个main package
-
fmt
- 包含了标准输入输出的函数
-
func main
- 若未定义init()函数,则main函数为第一个执行的函数,也是程序的入口函数
-
格式
{
不可单独占用一行,否则会报错:missing function body
- 严格区分大小写
- Go方法由一条条语句构成,Go语言会在每条语句后自动添加分号,若每行只有一条语句,则不需要添加分号,若有多行,需要在每条语句后添加分号。
-
标识符
- 当标识符(常量,变量,类型,函数名,结构字段等) 以一个大写字母开头,使用这种形式标识符的对象就可以被外部包的代码使用(客户端程序需要先导入这个包),这称之为导出(类似Java的Public关键字)
- 当标识符以小写字母开头,则只能对改包内的文件可见,包外的文件无法引用(类似Java中的Protected)
func main() { //可以正常执行
fmt.Println("hello world !");fmt.Println("hello world")
}
go的运行
编译后执行:
源码直接运行
区别:
若先生成可执行文件,我们可以将文件放在没有go环境的机器上运行,若直接 go run,执行机器必须也有go环境。编译时,编译器会将程序运行依赖库的文件包含在可执行文件中。