![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Go
恋上一缕阳光
这个作者很懒,什么都没留下…
展开
-
Go语言学习笔记(七) 系统类型
系统类型对于面向对象编程的支持Go 语言设计得非常简洁而优雅。简洁之处在于,Go语言并没有沿袭传统面向对象编程中的诸多概念,比如继承、虚函数、构造函数和析构函数、隐藏的this指针等。优雅之处在于,Go语言对面向对象编程的支持是语言类型系统中的天然组成部分。整个类型系统通过接口串联,浑然一体。在Java语言中,存在两套完全独立的类型系统:一套是值类型系统,主要是基本类型,如byte、int...原创 2018-10-18 11:50:42 · 303 阅读 · 0 评论 -
Go语言学习笔记(一) 简介、安装
为什么选择Go编程语言已经非常多,偏性能敏感的编译型语言有 C、C++、Java、C#、Delphi和Objective-C等,偏快速业务开发的动态解析型语言有PHP、Python、Perl、Ruby、JavaScript和Lua等,面向特定领域的语言有Erlang、R和MATLAB等,那么我们为什么需要 Go这样一门新语言呢?Go语言官方自称,之所以开发Go 语言,是因为“近10年来开发...原创 2018-06-26 15:50:05 · 143 阅读 · 0 评论 -
Go语言学习笔记(二) 基本语法、变量、常量、类型
基本语法Go语言中的标记Go程序是由各种标记组成的,标记可以是关键字,标识符,常量,字符串文字或符号。例如,以下Go语句由六个标记组成:fmt.Println("Hello, World!")每个标记单独表示为:fmt.Println("Hello, World!")行分隔符在Go程序中,行分隔符键是语句终止符。 也就是说,每个单独的语句不需要特殊的分隔符...原创 2018-09-21 12:56:08 · 195 阅读 · 1 评论 -
Go语言学习笔记(三) 集合类型
数组数组中包含的每个数据被称为数组元素(element),一个数组包含的元素个数被称为数组的长度。[32]byte // 长度为32的数组,每个元素为一个字节[2*N] struct { x, y int32 } // 复杂类型数组[1000]*float64 // 指针数组[3][5]int // 二维数组[2][2][2]float64 // 等同于[2]([2]([2]fl...原创 2018-09-27 17:50:13 · 334 阅读 · 0 评论 -
Go语言学习笔记(四) 流程控制
程序设计语言的流程控制语句,用于设定计算执行的次序,建立程序的逻辑结构。可以说,流程控制语句是整个程序的骨架。从根本上讲,流程控制只是为了控制程序语句的执行顺序,一般需要与各种条件配合,因此,在各种流程中,会加入条件判断语句。流程控制语句一般起以下3个作用:选择,即根据条件跳转到不同的执行序列; 循环,即根据条件反复执行某个序列,当然每一次循环执行的输入输出可能会发生变化; 跳转,即根据条...原创 2018-10-09 16:56:54 · 178 阅读 · 0 评论 -
Go语言学习笔记(五) 函数
函数定义函数构成代码执行的逻辑结构。在Go语言中,函数的基本组成为:关键字func、函数名、参数列表、返回值、函数体和返回语句。func (p mytype) funcname(q int) (r, s int) { return 0, 0}func:保留字func 用于定义一个函数 (p mytype):可省略。函数可以定义用于特定的类型,比如这个函数只有mytype类型才可...原创 2018-10-09 16:59:50 · 167 阅读 · 0 评论 -
Go语言学习笔记(六) 错误处理
error接口Go语言引入了一个关于错误处理的标准模式,即error接口,该接口的定义如下:type error interface {Error() string}对于大多数函数,如果要返回错误,大致上都可以定义为如下模式,将error作为多种返回值中的最后一个,但这并非是强制要求:func Foo(param int)(n int, err error) {// ....原创 2018-10-12 16:16:38 · 181 阅读 · 0 评论 -
Go语言学习笔记(八) 面向对象
go并不是一个纯面向对象的编程语言。在go中的面向对象,结构体替换了类。Go并没有提供类class,但是它提供了结构体struct,方法method,可以在结构体上添加。提供了捆绑数据和方法的行为,这些数据和方法与类类似。定义结构体和方法创建一个外部可访问的Employee结构体,并为这个结构体定义一个方法LeavesRemaining()package employeeimp...原创 2018-11-05 17:08:23 · 230 阅读 · 0 评论 -
Go语言学习笔记(九)并发
并发性ConcurrencyGo是并发语言,而不是并行语言。在讨论如何在Go中进行并发处理之前,我们首先必须了解什么是并发,以及它与并行性有什么不同。(Go is a concurrent language and not a parallel one. )并发性Concurrency是同时处理许多事情的能力。举个例子,假设一个人在晨跑。在晨跑时,他的鞋带松了。现在这个人停止跑步,系鞋...原创 2018-11-07 13:32:10 · 255 阅读 · 1 评论