注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術工業(yè)技術建筑科學建筑設計瘋狂Java講義(第4版)

瘋狂Java講義(第4版)

瘋狂Java講義(第4版)

定 價:¥109.00

作 者: 李剛
出版社: 電子工業(yè)出版社
叢編項:
標 簽: 編程語言與程序設計 計算機?網絡

ISBN: 9787121331084 出版時間: 2018-01-01 包裝:
開本: 16 頁數: 896 字數:  

內容簡介

  《瘋狂Java講義(第4版)》是《瘋狂Java講義》的第4版,第4版保持了前3版系統(tǒng)、全面、講解淺顯、細致的特性,全面新增介紹了Java 9的新特性。 《瘋狂Java講義(第4版)》深入介紹了Java編程的相關方面,《瘋狂Java講義(第4版)》內容覆蓋了Java的基本語法結構、Java的面向對象特征、Java集合框架體系、Java泛型、異常處理、Java GUI編程、JDBC數據庫編程、Java注釋、Java的IO流體系、Java多線程編程、Java網絡通信編程和Java反射機制。覆蓋了java.lang、java.util、java.text、java.io和java.nio、java.sql、java.awt、javax.swing包下絕大部分類和接口。本書重點介紹了Java 9的模塊化系統(tǒng),還詳細介紹了Java 9的jshell工具、多版本JAR包、匿名內部類的菱形語法、增強的try語句、私有接口方法,以及Java 9新增的各種API功能。 與前3版類似,《瘋狂Java講義(第4版)》并不單純從知識角度來講解Java,而是從解決問題的角度來介紹Java語言,所以《瘋狂Java講義(第4版)》中涉及大量實用案例開發(fā):五子棋游戲、梭哈游戲、仿QQ的游戲大廳、MySQL企業(yè)管理器、仿EditPlus的文本編輯器、多線程、斷點下載工具、Spring框架的IoC容器……這些案例既能讓讀者鞏固每章的知識,又可以讓讀者學以致用,激發(fā)編程自豪感,進而引爆內心的編程激情。《瘋狂Java講義(第4版)》光盤里包含書中所有示例的代碼和《瘋狂Java實戰(zhàn)演義》的所有項目代碼,這些項目可以作為本書課后練習的“非標準答案”,如果讀者需要獲取關于課后習題的解決方法、編程思路,可以登錄http://www.crazyit.org站點與筆者及本書龐大的讀者群相互交流。 《瘋狂Java講義(第4版)》為所有打算深入掌握Java編程的讀者而編寫,適合各種層次的Java學習者和工作者閱讀,也適合作為大學教育、培訓機構的Java教材。但如果只是想簡單涉獵Java,則本書過于龐大,不適合閱讀。

作者簡介

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

圖書目錄

第1章 Java語言概述與開發(fā)環(huán)境 1

1.1 Java語言的發(fā)展簡史 2

1.2 Java程序運行機制 4

1.2.1 高級語言的運行機制 4

1.2.2 Java程序的運行機制和JVM 5

1.3 開發(fā)Java的準備 6

1.3.1 下載和安裝Java 9的JDK 6

不是說JVM是運行Java程序的虛擬機嗎?那JRE和JVM的關系是怎樣的呢? 6

為什么不安裝公共JRE呢? 8

1.3.2 設置PATH環(huán)境變量 9

為什么選擇用戶變量?用戶變量與系統(tǒng)變量有什么區(qū)別? 10

1.4 第一個Java程序 11

1.4.1 編輯Java源代碼 11

1.4.2 編譯Java程序 11

當編譯C程序時,不僅需要指定存放目標文件的位置,也需要指定目標文件的文件名,這里使用javac編譯Java程序時怎么不需要指定目標文件的文件名呢? 12

1.4.3 運行Java程序 12

1.4.4 根據CLASSPATH環(huán)境變量定位類 13

1.5 Java程序的基本規(guī)則 14

1.5.1 Java程序的組織形式 14

1.5.2 Java源文件的命名規(guī)則 15

1.5.3 初學者容易犯的錯誤 15

1.6 JDK 9新增的jshell工具 17

1.7 Java 9的G1垃圾回收器 18

1.8 何時開始使用IDE工具 20

我想學習Java編程,到底是學習Eclipse好,還是學習NetBeans好呢? 21

1.9 本章小結 21

本章練習 21

第2章 理解面向對象 22

2.1  面向對象 23

2.1.1  結構化程序設計簡介 23

2.1.2  程序的三種基本結構 24

2.1.3  面向對象程序設計簡介 26

2.1.4  面向對象的基本特征 27

2.2  UML(統(tǒng)一建模語言)介紹 28

2.2.1  用例圖 30

2.2.2  類圖 30

2.2.3  組件圖 32

2.2.4  部署圖 33

2.2.5  順序圖 33

2.2.6  活動圖 34

2.2.7  狀態(tài)機圖 35

2.3  Java的面向對象特征 36

2.3.1  一切都是對象 36

2.3.2  類和對象 36

2.4  本章小結 37

第3章 數據類型和運算符 38

3.1  注釋 39

3.1.1  單行注釋和多行注釋 39

3.1.2  Java 9增強文檔注釋 40

API文檔是什么? 40

為什么要學習查看API文檔的方法? 42

3.2  標識符和關鍵字 46

3.2.1  分隔符 46

3.2.2  Java 9的標識符規(guī)則 48

3.2.3  Java關鍵字 48

3.3  數據類型分類 48

什么是變量?變量有什么用? 49

3.4  基本數據類型 49

3.4.1  整型 50

3.4.2  字符型 52

什么是字符集? 52

3.4.3  浮點型 53

3.4.4  數值中使用下畫線分隔 54

3.4.5  布爾型 55

3.5  基本類型的類型轉換 55

3.5.1  自動類型轉換 56

3.5.2  強制類型轉換 57

3.5.3  表達式類型的自動提升 58

3.6  直接量 59

3.6.1  直接量的類型 59

3.6.2  直接量的賦值 60

3.7  運算符 61

3.7.1  算術運算符 61

3.7.2  賦值運算符 63

3.7.3  位運算符 64

3.7.4  擴展后的賦值運算符 66

3.7.5  比較運算符 67

3.7.6  邏輯運算符 68

3.7.7  三目運算符 69

3.7.8  運算符的結合性和優(yōu)先級 69

3.8  本章小結 71

本章練習 71

第4章 流程控制與數組 72

4.1  順序結構 73

4.2  分支結構 73

4.2.1  if條件語句 73

4.2.2  Java 7增強后的switch分支語句 77

4.3  循環(huán)結構 79

4.3.1  while循環(huán)語句 79

4.3.2  do while循環(huán)語句 80

4.3.3  for循環(huán) 81

4.3.4  嵌套循環(huán) 84

4.4  控制循環(huán)結構 85

4.4.1  使用break結束循環(huán) 85

4.4.2  使用continue忽略本次循環(huán)剩下語句 86

4.4.3  使用return結束方法 87

4.5  數組類型 87

4.5.1  理解數組:數組也是一種類型 87

int[]是一種類型嗎?怎么使用這種類型呢? 88

4.5.2  定義數組 88

4.5.3  數組的初始化 89

能不能只分配內存空間,不賦初始值呢? 89

4.5.4  使用數組 90

為什么要我記住這些異常信息? 90

4.5.5  foreach循環(huán) 91

4.6  深入數組 92

4.6.1  內存中的數組 92

為什么有棧內存和堆內存之分? 93

4.6.2  基本類型數組的初始化 95

4.6.3  引用類型數組的初始化 96

4.6.4  沒有多維數組 98

我是否可以讓圖4.13中灰色覆蓋的數組元素再次指向另一個數組?這樣不就可以擴展成三維數組,甚至擴展成更多維的數組嗎? 99

4.6.5  Java 8增強的工具類:Arrays 100

4.6.6  數組的應用舉例 103

4.7  本章小結 106

本章練習 106

第5章 面向對象(上) 107

5.1  類和對象 108

5.1.1  定義類 108

構造器不是沒有返回值嗎?為什么不能用void聲明呢? 110

5.1.2  對象的產生和使用 111

5.1.3  對象、引用和指針 111

5.1.4  對象的this引用 112

5.2  方法詳解 116

5.2.1  方法的所屬性 116

5.2.2  方法的參數傳遞機制 117

5.2.3  形參個數可變的方法 120

5.2.4  遞歸方法 121

5.2.5  方法重載 123

為什么方法的返回值類型不能用于區(qū)分重載的方法? 123

5.3  成員變量和局部變量 124

5.3.1  成員變量和局部變量是什么 124

5.3.2  成員變量的初始化和內存中的運行機制 127

5.3.3  局部變量的初始化和內存中的運行機制 129

5.3.4  變量的使用規(guī)則 130

5.4  隱藏和封裝 131

5.4.1  理解封裝 131

5.4.2  使用訪問控制符 131

5.4.3  package、import和import static 134

5.4.4  Java的常用包 139

5.5  深入構造器 139

5.5.1  使用構造器執(zhí)行初始化 139

構造器是創(chuàng)建Java對象的途徑,是不是說構造器完全負責創(chuàng)建Java對象? 140

5.5.2  構造器重載 140

為什么要用this來調用另一個重載的構造器?我把另一個構造器里的代碼復制、粘貼到這個構造器里不就可以了嗎? 142

5.6  類的繼承 142

5.6.1  繼承的特點 142

5.6.2  重寫父類的方法 143

5.6.3  super限定 145

5.6.4  調用父類構造器 147

為什么我創(chuàng)建Java對象時從未感覺到java.lang. Object類的構造器被調用過? 149

5.7  多態(tài) 149

5.7.1  多態(tài)性 149

5.7.2  引用變量的強制類型轉換 151

5.7.3  instanceof運算符 152

5.8  繼承與組合 153

5.9  初始化塊 157

5.10  本章小結 162

本章練習 162

第6章 面向對象(下) 164

6.1  Java 8增強的包裝類 165

Java為什么要對這些數據進行緩存呢? 168

6.2  處理對象 169

6.3  類成員 174

6.4  final修飾符 176

6.5  抽象類 188

6.6  Java 9改進的接口 192

6.7  內部類 202

6.8  Java 8新增的Lambda表達式 214

6.9  枚舉類 223

6.10  對象與垃圾回收 229

6.11  修飾符的適用范圍 236

6.12  Java 9的多版本JAR包 237

6.13  本章小結 242

本章練習 242

第7章 Java基礎類庫 243

7.1  與用戶互動 244

7.2  系統(tǒng)相關 247

7.3  常用類 250

7.4  日期、時間類 262

7.5  正則表達式 268

7.6  變量處理和方法處理 274

7.7  Java 9改進的國際化與格式化 276

7.8  Java 8新增的日期、時間格式器 286

7.9  本章小結 289

本章練習 289

第8章 Java集合 290

8.1  Java集合概述 291

8.2  Collection和Iterator接口 292

8.3  Set集合 300

8.4  List集合 313

8.5  Queue集合 317

8.6  Java 8增強的Map集合 322

8.7  HashSet和HashMap的性能選項 334

8.8  操作集合的工具類:Collections 335

8.9  煩瑣的接口:Enumeration 341

8.10  本章小結 342

本章練習 342

第9章 泛型 343

9.1  泛型入門 344

9.2  深入泛型 347

9.3  類型通配符 350

9.4  泛型方法 356

9.5  擦除和轉換 362

9.6  泛型與數組 364

9.7  本章小結 365

第10章 異常處理 366

10.1  異常概述 367

10.2  異常處理機制 368

10.3  Checked異常和Runtime異常體系 378

10.4  使用throw拋出異常 380

10.5  Java的異常跟蹤棧 386

10.6  異常處理規(guī)則 388

10.7  本章小結 390

本章練習 390

第11章 AWT編程 391

11.1  Java 9改進的GUI(圖形用戶界面)和AWT 392

11.2  AWT容器 393

11.3  布局管理器 396

11.4  AWT常用組件 407

11.5  事件處理 411

11.6  AWT菜單 421

11.7  在AWT中繪圖 425

11.8  處理位圖 430

11.9  剪貼板 436

11.10  拖放功能 446

11.11  本章小結 451

本章練習 451

第12章 Swing編程 452

12.1  Swing概述 453

12.2  Swing基本組件的用法 454

12.3  Swing中的特殊容器 478

12.4  Swing簡化的拖放功能 491

12.5  Java 7新增的Swing功能 492

12.6  使用JProgressBar、ProgressMonitor和BoundedRangeModel創(chuàng)建進度條 500

12.7  使用JSlider和BoundedRangeModel創(chuàng)建滑動條 505

12.8  使用JSpinner和SpinnerModel創(chuàng)建微調控制器 508

12.9  使用JList、JComboBox創(chuàng)建列表框 511

12.10  使用JTree和TreeModel創(chuàng)建樹 521

12.11  使用JTable和TableModel創(chuàng)建表格 535

12.12  使用JFormattedTextField和JTextPane創(chuàng)建格式文本 557

12.13  本章小結 575

本章練習 575

第13章 MySQL數據庫與JDBC編程 576

13.1  JDBC基礎 577

13.2  SQL語法 579

13.3  JDBC的典型用法 613

13.4  執(zhí)行SQL語句的方式 618

13.5  管理結果集 627

13.6  Javar的RowSet 636

13.7  事務處理 641

13.8  分析數據庫信息 646

13.9  使用連接池管理連接 649

13.10  本章小結 651

本章練習 651

第14章 注解(Annotation) 652

14.1  基本注解 653

14.2  JDK的元注解 657

14.3  自定義注解 660

14.4  編譯時處理注解 670

14.5  本章小結 674

第15章 輸入/輸出 675

15.1  File類 676

15.2  理解Java的IO流 679

15.3  字節(jié)流和字符流 681

15.4  輸入/輸出流體系 685

15.5  重定向標準輸入/輸出 690

15.6  Java虛擬機讀寫其他進程的數據 691

15.7  RandomAccessFile 694

15.8  Java 9改進的對象序列化 697

15.9  NIO 711

15.10  Java 7的NIO.2 721

15.11  本章小結 726

本章練習 727

第16章 多線程 728

16.1  線程概述 729

16.2  線程的創(chuàng)建和啟動 731

16.3  線程的生命周期 735

16.4  控制線程 739

16.5  線程同步 743

16.6  線程通信 753

16.7  線程組和未處理的異常 761

16.8  線程池 764

16.9  線程相關類 769

16.10  本章小結 774

本章練習 775

第17章 網絡編程 776

17.1  網絡編程的基礎知識 777

17.2  Java的基本網絡支持 779

17.3  基于TCP協(xié)議的網絡編程 787

17.4  基于UDP協(xié)議的網絡編程 814

17.5  使用代理服務器 828

17.6  本章小結 832

本章練習 832

第18章 類加載機制與反射 833

18.1  類的加載、連接和初始化 834

18.2  類加載器 838

18.3  通過反射查看類信息 844

18.4  使用反射生成并操作對象 850

18.5  使用反射生成JDK動態(tài)代理 857

18.6  反射和泛型 862

18.7  本章小結 865

本章練習 866

附錄A Java 9的模塊化系統(tǒng) 867

 

篇幅限制,部分小節(jié)未完整羅列,完整目錄請見本書。

 

本目錄推薦

掃描二維碼
Copyright ? 讀書網 ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號