![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Go语言
ialbo
这个作者很懒,什么都没留下…
展开
-
Go语言自学笔记(七)
网络编程:网络协议:通信双方都遵循,原始协议->标准协议。从应用的角度出发,协议可以理解为“规则”,是数据传输和数据解释的规则。假设A,B双方传输文件,规定:1.传输文件名,接收方接收到文件名,应答返回传输方。2.发送文件大小,接收方接收该数据返回应答。3.传输文件内容,接收方接收数据返回应答表示文件内容接收成功。由此,无论A,B之间传输何种文件,都是通过三次...原创 2019-07-29 18:54:57 · 430 阅读 · 0 评论 -
Go语言自学笔记(五)
Go语言的异常处理:通过err处理异常:非致命错误,实则变量和参数都是string类型。err1:=fmt.Errorf("%s","this is normal err1")package mainimport"errors"func main(){ err2:=errors.New("this is normal err2")}err接口的应用:除法函数...原创 2019-07-27 16:36:09 · 244 阅读 · 0 评论 -
Go语言自学笔记(四)+反射
反射:在运行时动态获取变量的相关信息,导入包:import “reflect”1.reflect.TypeOf(),获取变量的类型,返回reflect.Type类型。对结构体操作则显示结构体名。2.reflect.ValueOf(),获取变量的值,返回reflect.Value类型。(赋值,值传递)3.reflect.Value.Kind(),获取变量的类别,返回一个常量。对结构体操作...翻译 2019-07-26 15:12:15 · 241 阅读 · 0 评论 -
区块链笔记 拓展
金融发展过程:便于理解比特币1.物物交换的时代:2.实体货币:稀有贝壳、稀有金属(金,银)稀缺,容易分割3.传统货币:金属货币:纸币(由国家背书):国家发行,有可能产生通货膨胀(钱币发行量激增),购买力下降。电子金融:银行IC卡,支付宝,微信。由国家(中心机构)控制。比特币诞生背景:为脱离中心机构,用技术的发展取代国家在货币发行领域的统治地位...原创 2019-08-04 17:55:27 · 1749 阅读 · 1 评论 -
Go语言自学笔记(二)
Go语言函数:函数定义的格式:func fun(/*参数列表*/)(/*返回值列表*/){ //函数体 //返回语句}无参数无返回值的函数定义及调用:package mainimport "fmt"func fun(){ fmt.Println("函数运行") } func main(){ fun()}需要注意的是:1.程序从入口执...原创 2019-07-24 14:21:50 · 170 阅读 · 0 评论 -
Go语言自学笔记(四)
面向对象编程:继承,封装,多态,重用,多线程,低耦合。封装:通过方法实现。继承:通过匿名字段实现。多态:通过接口实现。Go语言的匿名字段/匿名组合/嵌入字段:结构体类型匿名字段:匿名字段既会继承字段的成员变量,又会继承字段的方法(方法在下文详解)。type Person struct{ name string sex byte age int}...原创 2019-07-26 14:02:12 · 167 阅读 · 0 评论 -
Go语言自学笔记(一)
Go(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。Go语言的基本语句:package main //声明main包import "fmt" //导入fmt包func main(){ //创建主函数 fmt.Println("Hello go") //调用fmt包中的打印函数}需要注意的是:Go...原创 2019-07-21 10:27:40 · 549 阅读 · 0 评论 -
Go语言自学笔记(八)
HTTP编程:Web工作方式:通过HTTP协议对于普通的上网过程,系统采用的操作流程:浏览器本身是一个客户端,当你输入URL的时候,首先浏览器回去请求DNS服务器,通过DNS获取相应的域名及对应的IP,然后通过IP地址找到IP对应的服务器后,要求建立TCP连接,等待浏览器发送完HTTP Request(请求)包后,服务器接收到请求包开始处理请求包,服务器调用自身服务,返回HTTP Resp...原创 2019-07-30 20:30:17 · 408 阅读 · 0 评论 -
Go语言自学笔记(三)
Go语言中的复合类型:指针:每个变量都有两层数据,一是变量的内存,二是变量的地址即内存的标签。我们通过正常输的都是变量的内存:var a int = 1fmt.Println(a)如果我们需要操作指针,则需要对地址操作,也就是内存的标签:&a(格式化输出用%p占位)fmt.Println(&a)保存int变量的地址需要指针类型*int,若保存*int类...原创 2019-07-25 11:51:10 · 162 阅读 · 0 评论 -
Go语言自学笔记(六)
Go语言优势:并发编程。并行和并发的区别:并行(parallel):指在同一时刻,有多条指令在多个处理器上同时执行。并发(concurrency):指在同一时刻只能有一条指令执行,但多个进程指令被快速的轮换执行,使得在宏观上具有多个进程同时执行的效果,但在微观上并不是同时执行的,只是把时间分成若干片段,使多个进程快速交替的执行。Go语言并发优势:从语言层面支持并发并且支持自动垃圾回...原创 2019-07-28 21:55:41 · 234 阅读 · 0 评论