反射
什么是反射反射可以在运行时动态获取变量的各种信息,比如变量的类型、值等如果是结构体,还可以获取到结构体本身的各种信息,比如结构体的字段、方法通过反射,还可以修改变量的值、调用方法使用反射,需要引入一个包:reflect,它定义了两个重要的类型Type和Value任意接口值在反射中都可以理解为由ref
Go并发编程
进程、线程、携程多线程并发性和并行性说明:并行性Parallelism不会总是导致更快的执行时间。这是因为并行运行的组件可能需要相互通信,这种通信开销很高,因此并行程序并不总是导致更快的执行时间。进程、线程、协程进程(Process),线程(Thread),协程(Coroutine)进程进程是一个程
IO
Go常用包
Go语言中的包包的本质:创建不同的文件夹,来存放程序文件Go语言的源码复用建立在包(package)基础之上main包Go语言的入口 main()函数所在的包必须是main包main包想要引用别的代码,则需要import导入!包名为main的包为应用程序的入口包,其他包不能使用package包Src
异常处理
面向对象编程
OOP思想面向过程的思维模式面向过程的思维模式是简单的线性思维,思考问题首先陷入第一步做什么,第二部做什么的细节中。这种思维模式适合处理简单的事情,比如:上厕所面向对象的思维模式面向对象的思维模式说白了就是分类思维模式。首先思考解决问题,需要哪些分类,然后对这些分类进行单独思考。最后,才对某个分类下
指针与结构体
指针Go语言的取地址符是&,放到一个变量前使用就会返回相应变量的内存地址指针的概念指针式存储另一个变量内存地址的变量package mainimport "fmt"func main() { var a int = 10 //b是指向了a的内存地址,&取地
切片与map
数组
什么是数组Go语言提供了数组类型的数据结构数组是具有相同唯一类型的一组已编号且固定长度的数组项序列,这种类型可以是任意的原始类型如整型、字符串或者自定义类型。数组元素可以通过索引(位置)来读取(或者修改),索引从0开始,第一个元素索引为0,第二个索引为1,以此类推。数组一旦定义后,大小不能改变数组是
Go语言函数
什么是函数函数是基本的代码块,用于执行一个任务Go语言最少有个main()函数通过函数来划分不同功能,逻辑上每个函数执行的是制定的任务函数声明告诉了编译器函数的名称,返回类型,和参数函数的声明Go语言函数定义格式如下:func function_name([parameter list])[retu