图书介绍
疯狂Kotlin讲义PDF|Epub|txt|kindle电子书版本网盘下载
![疯狂Kotlin讲义](https://www.shukui.net/cover/71/34535329.jpg)
- 李刚编著 著
- 出版社: 北京:电子工业出版社
- ISBN:9787121334597
- 出版时间:2018
- 标注页数:316页
- 文件大小:170MB
- 文件页数:324页
- 主题词:JAVA语言-程序设计
PDF下载
下载说明
疯狂Kotlin讲义PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 Kotlin语言与开发环境1
1.1 Kotlin语言简介2
1.1.1 服务端的Kotlin2
1.1.2 使用Kotlin开发Android应用2
1.1.3 Kotlin用于JavaScript3
1.2 使用命令行编译、运行Kotlin3
1.2.1 下载和安装Kotlin的SDK3
1.2.2 第一个Kotlin程序4
1.2.3 编译、运行Kotlin程序5
1.3 使用IntelliJ IDEA编译、运行Kotlin6
1.4 使用Eclipse编译、运行Kotlin8
1.5 本章小结10
第2章 Kotlin的基础类型11
2.1 注释12
2.1.1 单行注释和多行注释12
2.1.2 文档注释12
2.2 变量14
2.2.1 分隔符15
2.2.2 标识符规则16
2.2.3 Kotlin的关键字17
2.2.4 声明变量19
2.3 整型21
2.4 浮点型23
2.5 字符型24
2.6 数值型之间的类型转换25
2.6.1 整型之间的转换25
2.6.2 浮点型与整型之间的转换28
2.6.3 表达式类型的自动提升28
2.7 Boolean类型30
2.8 null安全31
2.8.1 非空类型和可空类型31
2.8.2 先判断后使用32
2.8.3 安全调用32
2.8.4 Elvis运算33
2.8.5 强制调用34
2.9 字符串34
2.9.1 字符串类型34
2.9.2 字符串模板35
2.9.3 Kotlin字符串的方法36
2.10 类型别名37
2.11 本章小结38
第3章 运算符和表达式39
3.1 与Java相同的运算符40
3.1.1 单目前缀运算符40
3.1.2 自加和自减运算符41
3.1.3 双目算术运算符41
3.1.4 in和!in运算符42
3.1.5 索引访问运算符43
3.1.6 调用运算符43
3.1.7 广义赋值运算符44
3.1.8 相等与不等运算符44
3.1.9 比较运算符45
3.2 位运算符46
3.3 区间运算符48
3.3.1 闭区间运算符48
3.3.2 半开区间运算符49
3.3.3 反向区间49
3.3.4 区间步长49
3.4 运算符重载50
3.4.1 重载单目前缀运算符50
3.4.2 重载自加和自减运算符51
3.4.3 重载双目算术运算符51
3.5 本章小结52
第4章 流程控制53
4.1 顺序结构54
4.2 分支结构54
4.2.1 if分支54
4.2.2 if表达式58
4.2.3 when分支语句58
4.2.4 when表达式61
4.2.5 when分支处理范围62
4.2.6 when分支处理类型62
4.2.7 when条件分支63
4.3 循环结构63
4.3.1 while循环64
4.3.2 do while循环65
4.3.3 for-in循环66
4.3.4 嵌套循环66
4.4 控制循环结构68
4.4.1 使用break结束循环68
4.4.2 使用continue忽略本次循环的剩下语句69
4.4.3 使用return结束方法70
4.5 本章小结71
第5章 数组和集合72
5.1 数组73
5.1.1 创建数组73
5.1.2 使用数组75
5.1.3 使用for-in循环遍历数组76
5.1.4 使用数组索引76
5.1.5 数组的常用方法77
5.1.6 多维数组80
5.1.7 数组的应用举例82
5.2 Kotlin集合概述85
5.3 Set集合88
5.3.1 声明和创建Set集合88
5.3.2 使用Set的方法90
5.3.3 遍历Set91
5.3.4 可变的Set92
5.4 List集合93
5.4.1 声明和创建List集合93
5.4.2 使用List的方法94
5.4.3 可变的List95
5.5 Map集合95
5.5.1 声明和创建Map集合95
5.5.2 使用Map的方法97
5.5.3 遍历Map98
5.5.4 可变的Map98
5.6 本章小结99
第6章 函数和Lambda表达式100
6.1 函数入门101
6.1.1 定义和调用函数101
6.1.2 函数返回值和Unit102
6.1.3 递归函数103
6.1.4 单表达式函数104
6.2 函数的形参105
6.2.1 命名参数105
6.2.2 形参默认值106
6.2.3 尾递归函数108
6.2.4 个数可变的形参109
6.3 函数重载110
6.4 局部函数111
6.5 高阶函数112
6.5.1 使用函数类型112
6.5.2 使用函数类型作为形参类型113
6.5.3 使用函数类型作为返回值类型114
6.6 局部函数与Lambda表达式115
6.6.1 回顾局部函数116
6.6.2 使用Lambda表达式代替局部函数116
6.6.3 Lambda表达式的脱离117
6.7 Lambda表达式117
6.7.1 调用Lambda表达式118
6.7.2 利用上下文推断类型118
6.7.3 省略形参名119
6.7.4 调用Lambda表达式的约定120
6.7.5 个数可变的参数和Lambda参数120
6.8 匿名函数121
6.8.1 匿名函数的用法121
6.8.2 匿名函数和Lambda表达式的return122
6.9 捕获上下文中的变量和常量123
6.10 内联函数125
6.10.1 内联函数的使用125
6.10.2 部分禁止内联126
6.10.3 非局部返回127
6.11 本章小结128
第7章 面向对象(上)129
7.1 类和对象130
7.1.1 定义类130
7.1.2 对象的产生和使用132
7.1.3 对象的this引用133
7.2 方法详解136
7.2.1 方法与函数的关系136
7.2.2 中缀表示法137
7.2.3 componentN方法与解构138
7.2.4 数据类和返回多个值的函数140
7.2.5 在Lambda表达式中解构141
7.3 属性和字段142
7.3.1 读写属性和只读属性142
7.3.2 自定义getter和setter144
7.3.3 幕后字段147
7.3.4 幕后属性148
7.3.5 延迟初始化属性149
7.3.6 内联属性150
7.4 隐藏和封装151
7.4.1 包和导包151
7.4.2 Kotlin的默认导入153
7.4.3 使用访问控制符153
7.5 深入构造器155
7.5.1 主构造器和初始化块156
7.5.2 次构造器和构造器重载158
7.5.3 主构造器声明属性161
7.6 类的继承161
7.6.1 继承的语法161
7.6.2 重写父类的方法164
7.6.3 重写父类的属性166
7.6.4 super限定167
7.6.5 强制重写168
7.7 多态169
7.7.1 多态性169
7.7.2 使用is检查类型170
7.7.3 使用as运算符转型172
7.8 本章小结174
第8章 面向对象(下)175
8.1 扩展176
8.1.1 扩展方法176
8.1.2 扩展的实现机制179
8.1.3 为可空类型扩展方法182
8.1.4 扩展属性182
8.1.5 以成员方式定义扩展183
8.1.6 带接收者的匿名函数184
8.1.7 何时使用扩展186
8.2 final和open修饰符187
8.2.1 可执行“宏替换”的常量187
8.2.2 final属性188
8.2.3 final方法189
8.2.4 final类190
8.2.5 不可变类190
8.3 抽象类192
8.3.1 抽象成员和抽象类192
8.3.2 抽象类的作用195
8.3.3 密封类196
8.4 接口198
8.4.1 接口的定义198
8.4.2 接口的继承199
8.4.3 使用接口200
8.4.4 接口和抽象类202
8.5 嵌套类和内部类202
8.5.1 内部类204
8.5.2 嵌套类207
8.5.3 在外部类以外使用内部类209
8.5.4 在外部类以外使用嵌套类209
8.5.5 局部嵌套类210
8.5.6 匿名内部类211
8.6 对象表达式和对象声明212
8.6.1 对象表达式212
8.6.2 对象声明和单例模式215
8.6.3 伴生对象和静态成员217
8.6.4 伴生对象的扩展218
8.7 枚举类219
8.7.1 枚举类入门219
8.7.2 枚举类的属性、方法和构造器221
8.7.3 实现接口的枚举类222
8.7.4 包含抽象方法的抽象枚举类222
8.8 类委托和属性委托223
8.8.1 类委托224
8.8.2 属性委托225
8.8.3 延迟属性227
8.8.4 属性监听228
8.8.5 使用Map存储属性值230
8.8.6 局部属性委托231
8.8.7 委托工厂233
8.9 本章小结234
第9章 异常处理236
9.1 异常处理机制237
9.1.1 使用try…catch捕获异常237
9.1.2 异常类的继承体系240
9.1.3 访问异常信息242
9.1.4 异常处理嵌套243
9.1.5 try语句是表达式243
9.2 使用throw抛出异常243
9.2.1 抛出异常243
9.2.2 自定义异常类244
9.2.3 catch和throw同时使用245
9.2.4 异常链246
9.2.5 throw语句是表达式247
9.3 异常的跟踪栈248
9.4 本章小结250
第10章 泛型251
10.1 泛型入门252
10.1.1 定义泛型接口、类252
10.1.2 从泛型类派生子类253
10.2 型变254
10.2.1 泛型型变的需要254
10.2.2 声明处型变256
10.2.3 使用处型变:类型投影258
10.2.4 星号投影260
10.3 泛型函数261
10.3.1 泛型函数的使用261
10.3.2 具体化类型参数262
10.4 设定类型形参的上限263
10.5 本章小结264
第11章 注解266
11.1 Kotlin注解入门267
11.1.1 定义注解267
11.1.2 注解的属性和构造器268
11.2 元注解270
11.2.1 使用@Retention270
11.2.2 使用@Target271
11.2.3 使用@MustBeDocumented272
11.2.4 使用@Repeatable标记可重复注解273
11.3 使用注解273
11.3.1 提取注解信息273
11.3.2 使用注解的示例274
11.4 Java注解与Kotlin的兼容性279
11.4.1 指定注解的作用目标279
11.4.2 使用Java注解281
11.5 本章小结282
第12章 Kotlin与Java互相调用283
12.1 Kotlin调用Java284
12.1.1 属性284
12.1.2 void和调用名为关键字的成员285
12.1.3 Kotlin的已映射类型286
12.1.4 Kotlin对Java泛型的转换287
12.1.5 对Java数组的处理287
12.1.6 调用参数个数可变的方法288
12.1.7 checked异常289
12.1.8 Object的处理289
12.1.9 访问静态成员290
12.1.10 SAM转换290
12.1.11 在Kotlin中使用JNI291
12.2 Java调用Kotlin291
12.2.1 属性291
12.2.2 包级函数292
12.2.3 实例变量294
12.2.4 类变量294
12.2.5 类方法296
12.2.6 访问控制符的对应关系297
12.2.7 获取KClass298
12.2.8 使用@JvmName解决签名冲突298
12.2.9 生成重载299
12.2.10 checked异常300
12.2.11 泛型的型变300
12.3 Kotlin反射302
12.3.1 类引用302
12.3.2 从KClass获取类信息303
12.3.3 创建对象306
12.3.4 构造器引用306
12.3.5 调用方法307
12.3.6 函数引用308
12.3.7 访问属性值309
12.3.8 属性引用311
12.3.9 绑定的方法与属性引用313
12.4 本章小结313