揭秘 Kotlin 编程原理

链接: https://pan.baidu.com/s/1dldhw_fY3mwaO5Wj6DeaXw

提取码: wt9k

在这里插入图片描述

目录

1 快速入门 1

1.1 简介 1

1.2 编写第一个Hello World程序 3

1.3 程序结构 10

1.3.1 Kotlin源码结构 10

1.3.2 包声明与导入 11

1.3.3 后缀名 14

1.4 Kotlin标准库 14

2 基本语法 19

2.1 基本类型 19

2.1.1 数字 20

2.1.2 字符串 23

2.2 变量与常量 24

2.2.1 常量 24

2.2.2 属性包装 25

2.3 函数 30

2.3.1 函数声明 30

2.3.2 闭包 35

2.3.3 lambda表达式 40

2.3.4 内联函数 54

3 封装 58

3.1 构造函数与实例化 60

3.1.1 构造函数漫谈 60

3.1.2 Kotlin构造函数 62

3.1.3 简化的主构造函数 63

3.1.4 二级构造函数 66

3.1.5 C++构造函数与参数列表 69

3.1.6 默认构造函数与覆盖 71

3.1.7 构造函数访问权限与缺省 73

3.2 内存分配 75

3.2.1 JVM内存模型 75

3.2.2 类元信息 80

3.2.3 创建类实例 87

3.3 初始化 89

3.3.1 用构建器自动初始化 89

3.3.2 成员变量初始化 90

3.3.3 init{}初始化 92

3.3.4 声明时初始化 96

3.3.5 初始化顺序 98

3.4 类成员变量 103

3.4.1 赋初值 103

3.4.2 访问权限 111

3.5 数组 115

3.5.1 通过Array接口声明数组 116

3.5.2 数组读写 119

3.5.3 声明引用型数组 120

3.5.4 使用其他方式声明数组 123

3.5.5 多维数组 129

3.5.6 数组与列表转换 131

3.6 静态函数与伴随对象 132

3.6.1 伴随对象 133

3.6.2 名称省略与实例化 135

3.6.3 伴随对象中的属性 136

3.6.4 伴随对象的初始化 137

3.6.5 伴随对象的原理 139

3.6.6 匿名类 145

4 继承 149

4.1 继承基础概念 149

4.1.1 继承语法 149

4.1.2 接口 152

4.1.3 虚类 165

4.2 多重继承 168

4.2.1 类与接口的多重继承 168

4.2.2 构造函数继承 170

4.2.3 接口方法的多重继承 174

4.3 继承初始化 176

4.4 类型转换 179

5 多态 183

5.1 概念 183

5.1.1 重写 184

5.1.2 重载 185

5.2 扩展 189

5.2.1 概念 189

5.2.2 Kotlin的扩展 191

5.2.3 扩展与重载 193

5.2.4 函数扩展的多态性 196

5.2.5 函数扩展原理 201

5.2.6 属性扩展 203

5.3 操作符重载 204

5.3.1 Kotlin中的操作符重载 205

5.3.2 通过扩展函数重载操作符 207

5.3.3 操作符重载原理 208

5.3.4 操作符重载限制 209

5.3.5 中缀符 211

5.4 指针与传递 212

5.4.1 Java中的类型与传递 213

5.4.2 按值/引用传递的终结者 216

5.4.3 this指针 218

5.4.4 类函数调用机制与this 222

6 Kotlin的I/O 224

6.1 Java I/O类库 224

6.2 Kotlin I/O类库 231

6.3 终端I/O 234

6.4 文件I/O 237

6.5 文件压缩示例 239

6.6 序列化 241

6.6.1 Kotlin的序列化 242

6.6.2 序列化控制 245

7 Kotlin机制 247

7.1 函数定义 247

7.1.1 顶级函数 247

7.1.2 内联函数 250

7.2 变量与属性 257

7.2.1 属性包装 257

7.2.2 延迟初始化 261

7.2.3 let语法糖 264

7.3 类定义 266

7.3.1 Java内部类 267

7.3.2 Kotlin中的类 272

7.3.3 Kotlin类对顶级属性和方法的访问 274

7.3.4 Kotlin类中的成员变量 276

7.3.5 单例对象 279

猜你喜欢

转载自blog.csdn.net/u014211007/article/details/93733635