Go基础知识-错误处理
错误和异常不同,错误是在程序中正常存在的,可以预知的失败在意料之中。而异常通常指在不应该出现问题的地方出现问题,比如空指针,这在人们的意料之外。go语言没有try......catch这样的方式来捕获异常所以Go定义属于自己的一种错误类型,用error表示错误。package main import ( "errors" "fmt" ...
错误和异常不同,错误是在程序中正常存在的,可以预知的失败在意料之中。而异常通常指在不应该出现问题的地方出现问题,比如空指针,这在人们的意料之外。go语言没有try......catch这样的方式来捕获异常所以Go定义属于自己的一种错误类型,用error表示错误。package main import ( "errors" "fmt" ...
其实在Go语言中是没有面向对象的,但是Go语言的语法设计,我们可以借助结构体,方法,接口的实现,来模拟其他语言中的面向对象的概念。首先了解一下什么是面向对...
type TestInterface interface { Test() Test2() } 其中,TestInterface为接口名,里面的Test(),Test2()分别为定义的方法。空接口就是不包含任何方法的接口,所有的类型都可以实现空接口,因此空接口可以实现存储任意类型的数据, 谁实现它就被看作是谁的实现类。其中的T等同于Java中的泛型package main ...
在Go语言中方法和函数类似,也可以认为方法是特殊类型的函数,只不过方法限制了接收者,方法也可以说是包含了接收者的函数。package main impo...
在Go语言中不存在Class类的概念,但是可以通过结构体struct来实现。结构体就是一种相同类型,或者不同类型的数据构成的数据的集合。里面的每一个变量叫做成员变量。也就是结构体的字段。每一个字段拥有自己的数据类型和数值。结构体定义之后也只是确定了这个结构长什么样子,都有哪些字段,并没有真实的数据,所以需要使用结构体时必须先实例化结构体。赋予结构体真实存在的意义。package struct...
指针是存储另一个变量的内存地址的变量。 例如: 变量B的值为100, 地址为0x1122。变量A的值为变量B的地址0x1122,那么A就拥有了变量B的地址...
函数代表了代码执行的逻辑,Go语言中函数的关键字是func加上函数名,参数列表,返回值和函数体,构成一个函数。我们在开发一个程序中一定会包含很多个函数。func myfunc(p int) int { return p } func Money() { println("Money") } 函数名可以由字母和数字组成,但不能是数字开头。函数的首字母区分大...
包的概念就是我们程序中的目录,包在实际应用中是非常常见的。Go语言提供了很多内置包,例如:fmt、strings、strconv、os、io等等。stri...
map是go语言中内置的字典类型,存储的是key:value键值对类型的数据。map通过key访问数据。map特点map是无序的、长度不固定、不能通过下标获取,只能通过key来访问。map的长度不固定,可以通过内置函数len(map)来获取map的长度。创建map的时候也是通过make函数创建。map的key是唯一的,不能重复,如果重复,新增加的回复改之前的key值。// 声明map 默认值...
数组数组的声明package main import "fmt" func main() { // 定义数组 va...