劍指 Java — 核心原理與應用實踐

尚硅谷教育

  • 出版商: 電子工業
  • 出版日期: 2022-06-01
  • 定價: $1,080
  • 售價: 8.5$918
  • 語言: 簡體中文
  • 頁數: 644
  • ISBN: 7121436647
  • ISBN-13: 9787121436642
  • 相關分類: Java 程式語言
  • 立即出貨 (庫存 < 3)

買這商品的人也買了...

相關主題

商品描述

本書分為四大部分:第1~6章,初步認識Java的基礎語法及主流編程工具的使用;第7~11章,詳解Java面向對象編程語言的語法、核心編程思想、基礎API等;第12~17章,介紹使用Java進行高級應用開發所需的API和基礎原理;第18、19章,介紹了Java8~Java17版本的新特性。本書核心內容基於目前企業應用最主流的Java8進行講解,讀者可以直接進階到最近的長期支持版本Java17。本書遵循深入淺出的原則編寫,既有生動活潑的生活化案例講解,又有乾貨滿滿的源碼級分析,可以讓讀者輕松領會Java技術精髓,快速掌握Java開發技能。本書為每一個知識點的講解都配備了案例,代碼量龐大,如果讀者跟隨本書案例練習會大大提升自身的代碼編寫能力。本書配套名師視頻教程,讀者在學習過程中可結合視頻學習,讓你的Java進階之路事半功倍,為後續的技術提升打下堅實的基礎。 本書適合初學Java編程語言的自學者、編程愛好者學習,還適合各類院校電腦相關專業的師生作為教材或教輔資料使用,是Java編程語言入門的必備圖書。

目錄大綱

1章 Java語言的概述 1

1.1 Java語言的發展簡史 1

1.2 Java語言的發展前景 3

1.3 Java語言的技術體系平台 4

1.4 Java語言的特點 4

1.5 Java語言的核心機制之JVM  6

1.6 Java語言的開發環境和運行環境 7

1.7 本章小結 8

2章 #一個Java程序:HelloWorld  9

2.1 開發的前期準備 9

2.1.1 JDK的下載 9

2.1.2 JDK的安裝 10

2.1.3 JDK的目錄介紹 12

2.1.4 配置環境變量 12

2.2 #一個Java程序 17

2.2.1 Java程序開發步驟 17

2.2.2 #一個Java程序的剖析 19

2.2.3 幾個初學者易犯的錯誤 19

2.3 Java註釋 23

2.3.1 單行註釋 23

2.3.2 多行註釋 23

2.3.3 文檔註釋 24

2.4 文本編輯器的介紹 25

2.4.1 下載與安裝 25

2.4.2 語言環境設置 25

2.4.3 開發Java程序 26

2.4.4 字符編碼設置 27

2.4.5 默認開發語言設置 29

2.5 案例:打印個人信息 30

2.6 本章小結 30

3章 基礎語法 31

3.1 關鍵字和保留字 31

3.1.1 關鍵字 32

3.1.2 保留字 32

3.1.3 特殊值 32

3.2 標識符 33

3.2.1 標識符的命名規則 33

3.2.2 標識符的命名規範 33

3.2.3 案例:標識符辨析 33

3.3 變量 34

3.3.1 變量的聲明與使用 34

3.3.2 變量的注意事項 36

3.4 數據類型 37

3.4.1 計算機數據存儲方式 38

3.4.2 整型 39

3.4.3 浮點型 40

3.4.4 字符型 41

3.4.5 布爾型 43

3.4.6 案例:用變量保存個人信息 43

3.5 數據類型的轉換 44

3.5.1 自動類型轉換 44

3.5.2 強制類型轉換 45

3.5.3 案例:基礎練習 46

3.6 運算符和標點符號 48

3.6.1 算術運算符 48

3.6.2 賦值運算符 53

3.6.3 比較運算符 54

3.6.4 邏輯運算符 55

3.6.5 位運算符 56

3.6.6 條件運算符 61

3.6.7 運算符的優先級 61

3.6.8 標點符號 62

3.7 本章案例 62

3.7.1 案例:實現算術運算 62

3.7.2 案例:求一個三位數字各個

位數上的和 63

3.7.3 案例:交換兩個變量的值 63

3.7.4 案例:判斷某個年份是否是

閏年 64

3.7.5 案例:將小寫字母轉為對應

的大寫字母 64

3.8 本章小結 65

4章 流程控制語句結構 66

4.1 順序結構 66

4.1.1 順序結構的特點 66

4.1.2 輸出語句 67

4.1.3 輸入語句 67

4.1.4 案例:從鍵盤中輸入個人

信息 69

4.2 分支結構之if…else  70

4.2.1 單分支條件判斷if  70

4.2.2 案例:2月份的總天數 71

4.2.3 雙分支條件判斷if…else  71

4.2.4 案例:平年、閏年 72

4.2.5 多分支條件判斷if…else if  72

4.2.6 案例:徵婚 74

4.2.7 案例:解方程 75

4.3 分支結構之switch-case  76

4.3.1 分支結構switch-case  76

4.3.2 分支結構與條件判斷的區別 79

4.3.3 案例:判斷這一天是當年的

幾天 80

4.4 循環結構 81

4.4.1 while語句 82

4.4.2 案例:趣味摺紙 83

4.4.3 do…while語句 83

4.4.4 案例:猜數字 84

4.4.5 for語句 85

4.4.6 案例:水仙花數 86

4.4.7 三種循環語句的對比 87

4.4.8 嵌套循環 87

4.4.9 案例:九九乘法表 88

4.4.10 案例:完數 89

4.5 跳轉語句 89

4.5.1 break語句 90

4.5.2 continue語句 91

4.5.3 return語句 92

4.5.4 案例:素數 92

4.6 綜合案例 93

4.7 本章小結 95

5章 數組 96

5.1 數組概述 96

5.2 一維數組 99

5.2.1 一維數組的聲明 99

5.2.2 一維數組的初始化 99

5.2.3 數組元素默認值 101

5.2.4 一維數組的遍歷 102

5.3.5 一維數組內存分析 103

5.2.6 案例:遍歷英文字母大小寫 103

5.2.7 案例:打魚還是曬網 104

5.3 數組的算法 105

5.3.1 元素特徵值統計 105

5.3.2 #值查找 106

5.3.3 順序查找 106

5.3.4 二分查找 108

5.5.5 冒泡排序 110

5.5.6 快速排序 111

5.5.7 數組的複制 114

5.5.8 元素的反轉 116

5.4 動態數組的實現 118

5.4.1 數組元素的增加 118

5.4.2 數組元素的刪除 120

5.5 多維數組 122

5.5.1 多維數組的聲明 123

5.5.2 多維數組的初始化 123

5.5.3 案例:楊輝三角 125

5.5.4 案例:矩陣轉置 126

5.6 本章小結 127

6章 開發工具IntelliJ IDEA  128

6.1 IntelliJ IDEA概述 128

6.2 下載與安裝 129

6.2.1 下載 129

6.2.2 安裝 130

6.3 初始化設置 133

6.4 快速創建並運行Java工程 134

6.5 詳細設置 137

6.5.1 字體大小設置 137

6.5.2 字符編碼設置 138

6.5.3 大小寫不敏感設置 138

6.5.4 自動導包 139

6.5.5 啟動出設置 140

6.5.6 自動更新 141

6.6 快速開發 141

6.6.1 代碼模板 141

6.6.2 快捷鍵 142

6.7 多模塊的IDEA工程 144

6.8 本章小結 148

7章 面向對象編程基礎 149

7.1 面向對象與面向過程 149

7.2 類與對象 150

7.2.1 類與對象的關係 150

7.2.2 類的聲明 150

7.2.3 對象的創建 152

7.3 類的成員之成員變量 153

7.3.1 成員變量的聲明 153

7.3.2 成員變量的訪問 154

7.3.3 成員變量默認值 155

7.3.4 對象的內存分析 156

7.3.5 成員變量與局部變量的區別 158

7.3.6 案例:商品類與對象 158

7.3.7 案例:銀行賬戶類與對象 159

7.4 類的成員之方法 160

7.4.1 方法的聲明 160

7.4.2 方法的調用 162

7.4.3 方法的傳參機制 163

7.4.4 案例:圓類方法設計與調用 167

7.4.5 案例:數組工具類方法設計

與調用 168

7.5 方法的重載 171

7.5.1 重載方法的聲明和調用 171

7.5.2 案例:求三角形面積 173

7.6 特殊參數 174

7.6.1 命令行參數 174

7.6.2 可變參數 176

7.6.3 案例:n個字符串拼接 177

7.7 方法的遞歸調用 178

7.7.1 遞歸調用 178

7.7.2 案例:猴子吃桃 179

7.7.3 案例:走台階 180

7.8 對像數組的使用 181

7.8.1 對像數組 181

7.8.2 對像數組的內存分析 182

7.8.3 案例:員工信息管理 183

7.9 本章小結 184

8章 面向對象編程進階 185

8.1 類的成員之構造器 185

8.1.1 構造器的聲明 185

8.1.2 構造器的使用 186

8.1.3 案例:矩形類構造器的設計 187

8.2 面向對象的基本特徵之封裝性 188

8.2.1 封裝的體現 188

8.2.2 訪問權限修飾符 189

8.2.3 案例:矩形類的封裝 191

8.3 this關鍵字 192

8.3.1 this關鍵字的使用場景 193

8.3.2 案例:矩形類代碼的改進 195

8.3.3 案例:銀行賬戶類的改進 196

8.3.4 什麼是JavaBean  198

8.4 包的使用 199

8.4.1 包的聲明 199

8.4.2 使用其他包的類 201

8.4.3 常用包介紹 202

8.4.4 案例:員工信息管理 203

8.5 面向對象的基本特徵之繼承性 205

8.5.1 為什麼需要繼承 206

8.5.2 如何實現類的繼承 207

8.5.3 類繼承性的特點 207

8.5.4 方法的重寫 213

8.5.5 super關鍵字 214

8.5.6 案例:員工和學生信息管理 216

8.6 面向對象基本特徵之多態性 218

8.6.1 對象的多態性表現 218

8.6.2 多態性的應用 220

8.6.3 向上轉型與向下轉型 222

8.6.4 instanceof關鍵字 223

8.6.5 案例:圖形對像管理 224

8.6.6 企業面試題 228

8.7 類的成員之代碼塊 228

8.7.1 代碼塊的語法 229

8.7.2 類的初始化 229

8.7.3 案例:類初始化 230

8.7.4 對象的初始化 232

8.7.5 案例:對像初始化 234

8.7.6 企業面試題 236

8.8 本章小結 237

9章 面向對象高#級編程 238

9.1 final關鍵字 238

9.2 native關鍵字 240

9.3 abstract關鍵字 241

9.3.1 抽象方法 241

9.3.2 抽像類 241

9.3.3 案例:模板設計模式 244

9.3.4 案例:員工工資系統 246

9.4 接口 249

9.4.1 接口的好處 249

9.4.2 接口的聲明 250

9.4.3 接口的擴展與實現 251

9.4.4 Java 8對接口的改進 255

9.4.5 案例:排序接口Sortable  258

9.5 內部類 261

9.5.1 成員內部類 261

9.5.2 案例:汽車與發動機 264

9.5.3 局部內部類 265

9.5.4 匿名內部類 266

9.5.5 案例:排序接口Comparator  268

9.6 枚舉 270

9.6.1 使用class定義枚舉類 270

9.6.2 使用enum定義枚舉類 271

9.6.3 案例:星期枚舉類 273

9.7 註解 274

9.7.1 註解的使用 274

9.7.2 元註解 276

9.7.3 自定義註解 277

9.7.4 註解的新特性 278

9.8 案例:不可擴容與可擴容數組容器 280

9.9 本章小結 283

10章 異常和異常處理 284

10.1 異常體系結構 284

10.1.1 什麼是異常 284

10.1.2 異常的分類 284

10.1.3 常見的異常和錯誤類型 286

10.1.4 異常信息的查看 291

10.2 異常處理 292

10.2.1 try-catch-finally  292

10.2.2 案例:數組元素的查找 296

10.2.3 關鍵字:throws  298

10.2.4 案例:倒計時幾秒 300

10.2.5 關鍵字:throw  301

10.2.6 案例:取款和存款異常 303

10.2.7 Java 7對異常處理的改進 305

10.3 異常類型的擴展 306

10.3.1 自定義異常類型 306

10.3.2 案例:登錄異常 307

10.4 本章小結 308

11章 常用類 309

11.1 Object類 309

11.1.1 toString方法 310

11.1.2 equals方法 311

11.1.3 hashCode方法 314

11.1.4 getClass方法 316

11.1.5 clone方法 317

11.1.6 finalize方法 318

11.2 包裝類 319

11.2.1 數值類型 319

11.2.2 Character類型 321

11.2.3 Boolean類型 322

11.2.4 裝箱與拆箱 322

11.2.5 案例:員工信息管理 323

11.2.6 案例:計算兩個整數的和 325

11.2.7 包裝類的緩存對象 325

11.3 String類 326

11.3.1 字符串的特點 326

11.3.2 字符串對象的內存分析 328

11.3.3 案例:企業面試題 329

11.3.4 String類的常見方法 331

11.3.5 案例:String算法考查 334

11.4 可變字符序列 336

11.4.1 可變字符序列的常用方法 336

11.4.2 字符串與可變字符序列的

區別 338

11.4.3 案例:字符串#部分反轉 340

11.5 Arrays類 341

11.5.1 toString方法:轉換字符串 341

11.5.2 sort方法:自然排序 342

11.5.3 sort方法:定制排序 343

11.5.4 binarySearch方法:查找 345

11.5.5 copyOf方法:數組複製 345

11.5.6 equals方法:判斷數組的

元素是否相等 345

11.5.7 案例:左奇右偶 346

11.5.8 案例:動態數組 347

11.6 數學相關類 351

11.6.1 Math類 351

11.6.2 BigInteger類 352

11.6.3 BigDecimal類 353

11.6.4 Random類 353

11.6.5 案例:企業面試題 354

11.7 日期類 355

11.7.1 #一代日期類 355

11.7.2 二代日期類 357

11.7.3 三代日期類 357

11.8 本章小結 361