上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 107 下一页
  2020年6月28日
摘要: 接口概念 接口类型可以看作是类型系统中一种特殊的类型,而实例就是实现了该接口的具体结构体类型。 接口类型与实现了该接口的结构体对象之间的关系好比变量类型与变量之间的关系。 ​ 接口即一组方法定义的集合,定义了对象的一组行为,由具体的类型实例实现具体的方法。换句话说,一个接口就是定义(规范或约束),而 阅读全文
posted @ 2020-06-28 10:45 清明-心若淡定 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 1. 类型系统[类的声明] 类型系统: 一组基本类型构成的“基本类型集合”; “基本类型集合”上定义的一系列组合、运算、转换方法。 类型系统包括基础类型(byte、int、bool、float等);复合类型(数组、结构体、指针等);可以指向任何对象的类型(Any类型,类似Java的Object类型) 阅读全文
posted @ 2020-06-28 10:10 清明-心若淡定 阅读(711) 评论(0) 推荐(0) 编辑
摘要: 面向对象编程 把一组数据结构和处理它们的方法组成对象(object),把相同行为的对象归纳为类(class),通过类的封装(encapsulation)隐藏内部细节,通过继承(inheritance)实现类的特化(specialization)[方法的重写,子类不同于父类的特性]/泛化(genera 阅读全文
posted @ 2020-06-28 09:34 清明-心若淡定 阅读(164) 评论(0) 推荐(0) 编辑
摘要: error接口 //定义error接口 type error interface{ Error() string } //调用error接口 func Foo(param int) (n int,err error){ //... } n,err:=Foo(0) if err!=nil{ //错误处 阅读全文
posted @ 2020-06-28 09:32 清明-心若淡定 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 语法: defer function_name() 1)defer在声明时不会执行,而是推迟执行,在return执行前,倒序执行defer[先进后出],一般用于释放资源,清理数据,记录日志,异常处理等。 2)defer有一个特性:即使函数抛出异常,defer仍会被执行,这样不会出现程序错误导致资源不 阅读全文
posted @ 2020-06-28 09:25 清明-心若淡定 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 闭包=函数+引用环境 所谓闭包是指内层函数引用了外层函数中的变量或称为引用了自由变量的函数,其返回值也是一个函数 闭包只是在形式和表现上像函数,但实际上不是函数。函数是一些可执行的代码,这些代码在函数被定义后就确定了,不会在执行时发生变化,所以一个函数只有一个实例。闭包在运行时可以有多个实例,不同的 阅读全文
posted @ 2020-06-28 08:49 清明-心若淡定 阅读(245) 评论(0) 推荐(0) 编辑
  2020年6月24日
摘要: 函数 1. 函数定义与调用 //1、函数组成:关键字func ,函数名,参数列表,返回值,函数体,返回语句 //先名称后类型 func 函数名(参数列表)(返回值列表){ //参数列表和返回值列表以变量声明的形式,如果单返回值可以直接加类型 函数体 return //返回语句 } //例子 func 阅读全文
posted @ 2020-06-24 10:27 清明-心若淡定 阅读(203) 评论(0) 推荐(0) 编辑
  2020年6月23日
摘要: 类型 1. 基础类型 1.1. 布尔类型 //布尔类型的关键字为bool,值为true或false,不可写为0或1 var v1 bool v1=true //接受表达式判断赋值,不支持自动或强制类型转换 v2:=(1==2) 1.2. 整型 //1、类型表示 //int和int32为不同类型,不会 阅读全文
posted @ 2020-06-23 12:01 清明-心若淡定 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 1.变量 1.1变量声明 //1、单变量声明,类型放在变量名之后,可以为任意类型 var 变量名 类型 var v1,v2,v3 string //多变量同类型声明 //2、多变量声明 var { v1 int v2 []int } 1.2变量初始化 //1、使用关键字var,声明变量类型并赋值 v 阅读全文
posted @ 2020-06-23 09:25 清明-心若淡定 阅读(238) 评论(0) 推荐(0) 编辑
  2020年6月22日
摘要: package main import ( "fmt" ) const ( Low = iota //0 Medium //1 High = 100 //100 Super //100 Band = iota //4 ) func main() { fmt.Println(Band) } 如果是同一 阅读全文
posted @ 2020-06-22 14:41 清明-心若淡定 阅读(257) 评论(0) 推荐(0) 编辑
上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 107 下一页