Go 语言入门
1. 运行环境安装
示例
|
|
终端
|
|
注意点
- 分号结尾不影响使用
- 函数的{和函数名同一行不然报错
- 注释用//和/* */
- fmt 中 Println 空一行,Printf 表示格式化输出,%s 表示原字符,%T 表示类型,Sprintf(格式,变量)
2. 基础语法
无效标识符
- 以数字开头
- Go 语言关键字
- 运算符
导入包
- 方法名需要首字母大写,否则只能在包内调用
- 导入包不使用会报错,前面加上_无法调用会执行内部 init 方法,起别名可直接调用,加上.可以调用全部方法
变量声明
- 已被声明的变量不能再次声明
- _被用来抛弃值
- &返回地址,*指针变量
- 全局变量只能用普通方法声明,常用:=
|
|
数据类型
常量
|
|
多个返回值,形参
|
|
指针


条件判断补充
switch 自带 break,继续执行 case 加 fallthrough,default 默认运行
select
defer 函数
- 相当于 final,函数结尾执行,以压栈的方式先入后出
- defer 和 main,return 函数比 defer 先执行
数组
固定大小,传参传值
|
|
动态数组传参传指针,引用
|
|
切片四种方式,声明切片但是不分配空间
|
|
nil 空
len 长度,cap 容量
|
|
map
map3 种声明方式
map 的方法
|
|
结构体
|
|
类方法
大写字母开头的方法是公有,小写是私有
类定义的方法 func(副本 *结构体) 类方法名()类型{}
|
|
父类与子类 继承
|
|
多态与接口
|
|
万能通用接口
|
|
断言
|
|
reflect
|
|
reflect 中的 tag 标签