注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)瘋狂Kotlin講義

瘋狂Kotlin講義

瘋狂Kotlin講義

定 價(jià):¥69.00

作 者: 李剛 著
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 編程語(yǔ)言與程序設(shè)計(jì) 計(jì)算機(jī)?網(wǎng)絡(luò)

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787121334597 出版時(shí)間: 2018-01-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 324 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  Kotlin是JetBrains在2011年推出的一門(mén)全新的編程語(yǔ)言,這門(mén)語(yǔ)言*早被設(shè)計(jì)成運(yùn)行在JVM上――使用Kotlin編寫(xiě)的程序會(huì)被編譯成字節(jié)碼文件,該字節(jié)碼文件可直接在JVM上運(yùn)行(用java,命令運(yùn)行)。目前Google已推薦使用Kotlin作為Android的官方開(kāi)發(fā)語(yǔ)言,這意味著Kotlin將會(huì)在Android開(kāi)發(fā)上大放異彩。本書(shū)全面介紹了Kotlin的語(yǔ)法。從各平臺(tái)上Kotlin程序的編譯、運(yùn)行開(kāi)始介紹,詳細(xì)介紹了Kotlin的基本語(yǔ)法,Kotlin的數(shù)組和集合,Kotlin函數(shù)式編程特征,Kotlin的面向?qū)ο缶幊?、異常處理、泛型和注解,還介紹了Kotlin與Java混合調(diào)用的相關(guān)內(nèi)容,以及Kotlin反射相關(guān)內(nèi)容。本書(shū)對(duì)Kotlin的解讀十分系統(tǒng)、全面,超過(guò)Kotlin官方文檔本身覆蓋的內(nèi)容。本書(shū)很多地方都會(huì)結(jié)合Java字節(jié)碼進(jìn)行深入解讀,比如對(duì)Kotlin擴(kuò)展的解讀,對(duì)Kotlin主、次構(gòu)造器的解讀,這種解讀目的不止于教會(huì)讀者簡(jiǎn)單地掌握Kotlin的用法,而是力求讓讀者深入理解Kotlin,且更好地理解Java。簡(jiǎn)單來(lái)說(shuō),本書(shū)不僅是一本Kotlin的學(xué)習(xí)圖書(shū),而且也是一本能讓你更深入地理解Java的圖書(shū)。如果讀者在閱讀本書(shū)時(shí)遇到了技術(shù)問(wèn)題,可以登錄瘋狂Java聯(lián)盟(http://www.crazyit.org)發(fā)帖,筆者將會(huì)及時(shí)予以解答。

作者簡(jiǎn)介

  十多年的軟件開(kāi)發(fā)從業(yè)經(jīng)驗(yàn),瘋狂軟件教育中心教學(xué)總監(jiān)。瘋狂Java實(shí)訓(xùn)營(yíng)創(chuàng)始人,瘋狂Java體系原創(chuàng)圖書(shū)作者。廣東技術(shù)師范學(xué)院計(jì)算機(jī)科學(xué)系的兼職副教授,51CTO專家門(mén)診特邀嘉賓。培訓(xùn)的學(xué)生已在華為、IBM、阿里軟件、網(wǎng)易、電信盈科等名企就職。國(guó)內(nèi)著名高端IT技術(shù)作家,已出版《瘋狂Java講義》《瘋狂Android講義》《輕量級(jí)Java EE企業(yè)應(yīng)用實(shí)戰(zhàn)》《瘋狂iOS講義(基礎(chǔ)篇)(高級(jí)篇)》《瘋狂 Swift講義》《瘋狂Ajax講義》《瘋狂XML講義》《經(jīng)典Java EE企業(yè)應(yīng)用實(shí)戰(zhàn)》《Struts 2.x**指南》《瘋狂HTML 5/CSS 3/JavaScript講義》等著作。其 中瘋狂Java體系圖書(shū)均已沉淀多年、贏得極高的市場(chǎng)認(rèn)同、多次重印成為超級(jí)暢銷(xiāo)圖書(shū),并被多所“985”“211”高校選作教材,不少圖書(shū)已被翻譯成繁體中文版、 授權(quán)到臺(tái)灣地區(qū)。

圖書(shū)目錄

第1章 Kotlin語(yǔ)言與開(kāi)發(fā)環(huán)境 1
1.1 Kotlin語(yǔ)言簡(jiǎn)介 2
1.1.1 服務(wù)端的Kotlin 2
1.1.2 使用Kotlin開(kāi)發(fā)Android應(yīng)用 2
1.1.3 Kotlin用于JavaScript 3
1.2 使用命令行編譯、運(yùn)行Kotlin 3
1.2.1 下載和安裝Kotlin的SDK 3
1.2.2 第一個(gè)Kotlin程序 4
1.2.3 編譯、運(yùn)行Kotlin程序 5
1.3 使用IntelliJ IDEA編譯、運(yùn)行Kotlin 6
1.4 使用Eclipse編譯、運(yùn)行Kotlin 8
1.5 本章小結(jié) 10
第2章 Kotlin的基礎(chǔ)類型 11
2.1 注釋 12
2.1.1 單行注釋和多行注釋 12
2.1.2 文檔注釋 12
2.2 變量 14
2.2.1 分隔符 15
2.2.2 標(biāo)識(shí)符規(guī)則 16
2.2.3 Kotlin的關(guān)鍵字 17
2.2.4 聲明變量 19
2.3 整型 21
2.4 浮點(diǎn)型 23
2.5 字符型 24
2.6 數(shù)值型之間的類型轉(zhuǎn)換 25
2.6.1 整型之間的轉(zhuǎn)換 25
2.6.2 浮點(diǎn)型與整型之間的轉(zhuǎn)換 28
2.6.3 表達(dá)式類型的自動(dòng)提升 28
2.7 Boolean類型 30
2.8 null安全 31
2.8.1 非空類型和可空類型 31
2.8.2 先判斷后使用 32
2.8.3 安全調(diào)用 32
2.8.4 Elvis運(yùn)算 33
2.8.5 強(qiáng)制調(diào)用 34
2.9 字符串 34
2.9.1 字符串類型 34
2.9.2 字符串模板 35
2.9.3 Kotlin字符串的方法 36
2.10 類型別名 37
2.11 本章小結(jié) 38
第3章 運(yùn)算符和表達(dá)式 39
3.1 與Java相同的運(yùn)算符 40
3.1.1 單目前綴運(yùn)算符 40
3.1.2 自加和自減運(yùn)算符 41
3.1.3 雙目算術(shù)運(yùn)算符 41
3.1.4 in和!in運(yùn)算符 42
3.1.5 索引訪問(wèn)運(yùn)算符 43
3.1.6 調(diào)用運(yùn)算符 43
3.1.7 廣義賦值運(yùn)算符 44
3.1.8 相等與不等運(yùn)算符 44
3.1.9 比較運(yùn)算符 45
3.2 位運(yùn)算符 46
3.3 區(qū)間運(yùn)算符 48
3.3.1 閉區(qū)間運(yùn)算符 48
3.3.2 半開(kāi)區(qū)間運(yùn)算符 49
3.3.3 反向區(qū)間 49
3.3.4 區(qū)間步長(zhǎng) 49
3.4 運(yùn)算符重載 50
3.4.1 重載單目前綴運(yùn)算符 50
3.4.2 重載自加和自減運(yùn)算符 51
3.4.3 重載雙目算術(shù)運(yùn)算符 51
3.5 本章小結(jié) 52
第4章 流程控制 53
4.1 順序結(jié)構(gòu) 54
4.2 分支結(jié)構(gòu) 54
4.2.1 if分支 54
4.2.2 if表達(dá)式 58
4.2.3 when分支語(yǔ)句 58
4.2.4 when表達(dá)式 61
4.2.5 when分支處理范圍 62
4.2.6 when分支處理類型 62
4.2.7 when條件分支 63
4.3 循環(huán)結(jié)構(gòu) 63
4.3.1 while循環(huán) 64
4.3.2 do while循環(huán) 65
4.3.3 for-in循環(huán) 66
4.3.4 嵌套循環(huán) 66
4.4 控制循環(huán)結(jié)構(gòu) 68
4.4.1 使用break結(jié)束循環(huán) 68
4.4.2 使用continue忽略本次循環(huán)的
剩下語(yǔ)句 69
4.4.3 使用return結(jié)束方法 70
4.5 本章小結(jié) 71
第5章 數(shù)組和集合 72
5.1 數(shù)組 73
5.1.1 創(chuàng)建數(shù)組 73
5.1.2 使用數(shù)組 75
5.1.3 使用for-in循環(huán)遍歷數(shù)組 76
5.1.4 使用數(shù)組索引 76
5.1.5 數(shù)組的常用方法 77
5.1.6 多維數(shù)組 80
5.1.7 數(shù)組的應(yīng)用舉例 82
5.2 Kotlin集合概述 85
5.3 Set集合 88
5.3.1 聲明和創(chuàng)建Set集合 88
5.3.2 使用Set的方法 90
5.3.3 遍歷Set 91
5.3.4 可變的Set 92
5.4 List集合 93
5.4.1 聲明和創(chuàng)建List集合 93
5.4.2 使用List的方法 94
5.4.3 可變的List 95
5.5 Map集合 95
5.5.1 聲明和創(chuàng)建Map集合 95
5.5.2 使用Map的方法 97
5.5.3 遍歷Map 98
5.5.4 可變的Map 98
5.6 本章小結(jié) 99
第6章 函數(shù)和Lambda表達(dá)式 100
6.1 函數(shù)入門(mén) 101
6.1.1 定義和調(diào)用函數(shù) 101
6.1.2 函數(shù)返回值和Unit 102
6.1.3 遞歸函數(shù) 103
6.1.4 單表達(dá)式函數(shù) 104
6.2 函數(shù)的形參 105
6.2.1 命名參數(shù) 105
6.2.2 形參默認(rèn)值 106
6.2.3 尾遞歸函數(shù) 108
6.2.4 個(gè)數(shù)可變的形參 109
6.3 函數(shù)重載 110
6.4 局部函數(shù) 111
6.5 高階函數(shù) 112
6.5.1 使用函數(shù)類型 112
6.5.2 使用函數(shù)類型作為形參類型 113
6.5.3 使用函數(shù)類型作為返回值類型 114
6.6 局部函數(shù)與Lambda表達(dá)式 115
6.6.1 回顧局部函數(shù) 116
6.6.2 使用Lambda表達(dá)式代替局部函數(shù) 116
6.6.3 Lambda表達(dá)式的脫離 117
6.7 Lambda表達(dá)式 117
6.7.1 調(diào)用Lambda表達(dá)式 118
6.7.2 利用上下文推斷類型 118
6.7.3 省略形參名 119
6.7.4 調(diào)用Lambda表達(dá)式的約定 120
6.7.5 個(gè)數(shù)可變的參數(shù)和Lambda參數(shù) 120
6.8 匿名函數(shù) 121
6.8.1 匿名函數(shù)的用法 121
6.8.2 匿名函數(shù)和Lambda表達(dá)式
的return 122
6.9 捕獲上下文中的變量和常量 123
6.10 內(nèi)聯(lián)函數(shù) 125
6.10.1 內(nèi)聯(lián)函數(shù)的使用 125
6.10.2 部分禁止內(nèi)聯(lián) 126
6.10.3 非局部返回 127
6.11 本章小結(jié) 128
第7章 面向?qū)ο螅ㄉ希?129
7.1 類和對(duì)象 130
7.1.1 定義類 130
7.1.2 對(duì)象的產(chǎn)生和使用 132
7.1.3 對(duì)象的this引用 133
7.2 方法詳解 136
7.2.1 方法與函數(shù)的關(guān)系 136
7.2.2 中綴表示法 137
7.2.3 componentN方法與解構(gòu) 138
7.2.4 數(shù)據(jù)類和返回多個(gè)值的函數(shù) 140
7.2.5 在Lambda表達(dá)式中解構(gòu) 141
7.3 屬性和字段 142
7.3.1 讀寫(xiě)屬性和只讀屬性 142
7.3.2 自定義getter和setter 144
7.3.3 幕后字段 147
7.3.4 幕后屬性 148
7.3.5 延遲初始化屬性 149
7.3.6 內(nèi)聯(lián)屬性 150
7.4 隱藏和封裝 151
7.4.1 包和導(dǎo)包 151
7.4.2 Kotlin的默認(rèn)導(dǎo)入 153
7.4.3 使用訪問(wèn)控制符 153
7.5 深入構(gòu)造器 155
7.5.1 主構(gòu)造器和初始化塊 156
7.5.2 次構(gòu)造器和構(gòu)造器重載 158
7.5.3 主構(gòu)造器聲明屬性 161
7.6 類的繼承 161
7.6.1 繼承的語(yǔ)法 161
7.6.2 重寫(xiě)父類的方法 164
7.6.3 重寫(xiě)父類的屬性 166
7.6.4 super限定 167
7.6.5 強(qiáng)制重寫(xiě) 168
7.7 多態(tài) 169
7.7.1 多態(tài)性 169
7.7.2 使用is檢查類型 170
7.7.3 使用as運(yùn)算符轉(zhuǎn)型 172
7.8 本章小結(jié) 174
第8章 面向?qū)ο螅ㄏ拢?175
8.1 擴(kuò)展 176
8.1.1 擴(kuò)展方法 176
8.1.2 擴(kuò)展的實(shí)現(xiàn)機(jī)制 179
8.1.3 為可空類型擴(kuò)展方法 182
8.1.4 擴(kuò)展屬性 182
8.1.5 以成員方式定義擴(kuò)展 183
8.1.6 帶接收者的匿名函數(shù) 184
8.1.7 何時(shí)使用擴(kuò)展 186
8.2 final和open修飾符 187
8.2.1 可執(zhí)行“宏替換”的常量 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 嵌套類和內(nèi)部類 202
8.5.1 內(nèi)部類 204
8.5.2 嵌套類 207
8.5.3 在外部類以外使用內(nèi)部類 209
8.5.4 在外部類以外使用嵌套類 209
8.5.5 局部嵌套類 210
8.5.6 匿名內(nèi)部類 211
8.6 對(duì)象表達(dá)式和對(duì)象聲明 212
8.6.1 對(duì)象表達(dá)式 212
8.6.2 對(duì)象聲明和單例模式 215
8.6.3 伴生對(duì)象和靜態(tài)成員 217
8.6.4 伴生對(duì)象的擴(kuò)展 218
8.7 枚舉類 219
8.7.1 枚舉類入門(mén) 219
8.7.2 枚舉類的屬性、方法和構(gòu)造器 221
8.7.3 實(shí)現(xiàn)接口的枚舉類 222
8.7.4 包含抽象方法的抽象枚舉類 222
8.8 類委托和屬性委托 223
8.8.1 類委托 224
8.8.2 屬性委托 225
8.8.3 延遲屬性 227
8.8.4 屬性監(jiān)聽(tīng) 228
8.8.5 使用Map存儲(chǔ)屬性值 230
8.8.6 局部屬性委托 231
8.8.7 委托工廠 233
8.9 本章小結(jié) 234
第9章 異常處理 236
9.1 異常處理機(jī)制 237
9.1.1 使用try...catch捕獲異常 237
9.1.2 異常類的繼承體系 240
9.1.3 訪問(wèn)異常信息 242
9.1.4 異常處理嵌套 243
9.1.5 try語(yǔ)句是表達(dá)式 243
9.2 使用throw拋出異常 243
9.2.1 拋出異常 243
9.2.2 自定義異常類 244
9.2.3 catch和throw同時(shí)使用 245
9.2.4 異常鏈 246
9.2.5 throw語(yǔ)句是表達(dá)式 247
9.3 異常的跟蹤棧 248
9.4 本章小結(jié) 250
第10章 泛型 251
10.1 泛型入門(mén) 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 星號(hào)投影 260
10.3 泛型函數(shù) 261
10.3.1 泛型函數(shù)的使用 261
10.3.2 具體化類型參數(shù) 262
10.4 設(shè)定類型形參的上限 263
10.5 本章小結(jié) 264
第11章 注解 266
11.1 Kotlin注解入門(mén) 267
11.1.1 定義注解 267
11.1.2 注解的屬性和構(gòu)造器 268
11.2 元注解 270
11.2.1 使用@Retention 270
11.2.2 使用@Target 271
11.2.3 使用@MustBeDocumented 272
11.2.4 使用@Repeatable標(biāo)記可重復(fù)注解 273
11.3 使用注解 273
11.3.1 提取注解信息 273
11.3.2 使用注解的示例 274
11.4 Java注解與Kotlin的兼容性 279
11.4.1 指定注解的作用目標(biāo) 279
11.4.2 使用Java注解 281
11.5 本章小結(jié) 282
第12章 Kotlin與Java互相調(diào)用 283
12.1 Kotlin調(diào)用Java 284
12.1.1 屬性 284
12.1.2 void和調(diào)用名為關(guān)鍵字的成員 285
12.1.3 Kotlin的已映射類型 286
12.1.4 Kotlin對(duì)Java泛型的轉(zhuǎn)換 287
12.1.5 對(duì)Java數(shù)組的處理 287
12.1.6 調(diào)用參數(shù)個(gè)數(shù)可變的方法 288
12.1.7 checked異常 289
12.1.8 Object的處理 289
12.1.9 訪問(wèn)靜態(tài)成員 290
12.1.10 SAM轉(zhuǎn)換 290
12.1.11 在Kotlin中使用JNI 291
12.2 Java調(diào)用Kotlin 291
12.2.1 屬性 291
12.2.2 包級(jí)函數(shù) 292
12.2.3 實(shí)例變量 294
12.2.4 類變量 294
12.2.5 類方法 296
12.2.6 訪問(wèn)控制符的對(duì)應(yīng)關(guān)系 297
12.2.7 獲取KClass 298
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 創(chuàng)建對(duì)象 306
12.3.4 構(gòu)造器引用 306
12.3.5 調(diào)用方法 307
12.3.6 函數(shù)引用 308
12.3.7 訪問(wèn)屬性值 309
12.3.8 屬性引用 311
12.3.9 綁定的方法與屬性引用 313
12.4 本章小結(jié) 313

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) www.autoforsalebyowners.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)