摘要: 欢迎来到 Golang 系列教程的第 19 个教程。接口共有两个教程,这是我们第二个教程。如果你还没有阅读前面的教程,请你阅读接口(一)。 实现接口:指针接受者与值接受者 在接口(一)上的所有示例中,我们都是使用值接受者(Value Receiver)来实现接口的。我们同样可以使用指针接受者(Poi 阅读全文
posted @ 2019-08-14 09:07 风一样自由419154 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 什么是接口? 在面向对象的领域里,接口一般这样定义:接口定义一个对象的行为。接口只指定了对象应该做什么,至于如何实现这个行为(即实现细节),则由对象本身去确定。 在 Go 语言中,接口就是方法签名(Method Signature)的集合。当一个类型定义了接口中的所有方法,我们称它实现了该接口。这与 阅读全文
posted @ 2019-08-14 09:06 风一样自由419154 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 什么是方法? 方法其实就是一个函数,在 func 这个关键字和方法名中间加入了一个特殊的接收器类型。接收器可以是结构体类型或者是非结构体类型。接收器是可以在方法的内部访问的。 下面就是创建一个方法的语法。 上面的代码片段创建了一个接收器类型为 Type 的方法 methodName。 方法示例 让我 阅读全文
posted @ 2019-08-14 09:05 风一样自由419154 阅读(408) 评论(0) 推荐(0) 编辑
摘要: 什么是结构体? 结构体是用户定义的类型,表示若干个字段(Field)的集合。有时应该把数据整合在一起,而不是让这些数据没有联系。这种情况下可以使用结构体。 例如,一个职员有 firstName、lastName 和 age 三个属性,而把这些属性组合在一个结构体 employee 中就很合理。 结构 阅读全文
posted @ 2019-08-14 09:03 风一样自由419154 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 什么是指针? 指针是一种存储变量内存地址(Memory Address)的变量。 如上图所示,变量 b 的值为 156,而 b 的内存地址为 0x1040a124。变量 a 存储了 b 的地址。我们就称 a 指向了 b。 指针的声明 指针变量的类型为 *T,该指针指向一个 T 类型的变量。 接下来我 阅读全文
posted @ 2019-08-14 09:02 风一样自由419154 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 欢迎阅读 Golang 系列教程第 14 部分。 由于和其他语言相比,字符串在 Go 语言中有着自己特殊的实现,因此在这里需要被特别提出来。 什么是字符串? Go 语言中的字符串是一个字节切片。把内容放在双引号""之间,我们可以创建一个字符串。让我们来看一个创建并打印字符串的简单示例。 上面的程序将 阅读全文
posted @ 2019-08-14 09:01 风一样自由419154 阅读(414) 评论(0) 推荐(0) 编辑
摘要: 欢迎来到 Golang 系列教程的第 13 个教程。 什么是 map ? map 是在 Go 中将值(value)与键(key)关联的内置类型。通过相应的键可以获取到值。 如何创建 map ? 通过向 make 函数传入键和值的类型,可以创建 map。make(map[type of key]typ 阅读全文
posted @ 2019-08-13 17:14 风一样自由419154 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 欢迎来到 Golang 系列教程第 12 章。 一.什么是可变参数函数 可变参数函数是一种参数个数可变的函数。 语法 如果函数最后一个参数被记作 ...T ,这时函数可以接受任意个 T 类型参数作为最后一个参数。 请注意只有函数的最后一个参数才允许是可变的。 (1)可变参数函数如何工作 你是否曾经想 阅读全文
posted @ 2019-08-13 17:12 风一样自由419154 阅读(648) 评论(0) 推荐(0) 编辑
摘要: 欢迎来到 Golang 系列教程的第 11 章。在本章教程中,我们将讨论 Go 语言中的数组和切片。 数组 数组是同一类型元素的集合。例如,整数集合 5,8,9,79,76 形成一个数组。Go 语言中不允许混合不同类型的元素,例如包含字符串和整数的数组。(译者注:当然,如果是 interface{} 阅读全文
posted @ 2019-08-13 16:08 风一样自由419154 阅读(443) 评论(0) 推荐(0) 编辑