GO语言特性
GO语言特性
- 自动回收垃圾
- 丰富的内置类型
- 函数多返回值
- 错误处理
- 匿名函数和闭包
- 类型和接口
- 并发编程
- 反射
- 语言交互性
自动回收垃圾
所谓垃圾回收(Garbage Collection)简称GC,就是所有内存分配动作都会在被运行时记录,同时任何人对内存使用也会被记录,然后垃圾回收器会对已分配的内存进行追踪,一旦发现内存不被任何人使用,就会分阶段的回收掉这些没人用的内存,大部分垃圾回收都是这种原理。具体可以参考java的垃圾回收过程
丰富的内置类型
除了常规的数据类型如:整型、浮点型,Go语言也内置了一些高级类型如数组、字符串、map(字典)、slice(数据切片)。
函数多返回值
目前主流语言除了Python外基本都不支持函数多返回值功能,Go革命性地在静态开发语言中提供了多返回值功能
错误处理
Go语言引入了defer关键字用于标准错误处理流程,并提供了内置函数panic、recover完成异常抛出与捕获
匿名函数和闭包
Go语言中,所有的函数也是值类型,可以作为参数传递,Go支持常规的匿名函数和闭包
package main
import "fmt"
func main() {
sumFun := func(num1, num2 int) int {
return num1 + num2
}
sum := sumFun(10, 20)
fmt.Println(sum)
return
}
运行打印结果:30