Java編程基礎
-
【作 者】張煥生 崔炳德
【I S B N 】978-7-5170-8685-7
【責任編輯】石永峰
【適用讀者群】本專通用
【出版時間】2020-08-11
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數】240
【千字數】368
【印 張】15
【定 價】¥39
【叢 書】普通高等教育數據科學與大數據技術專業教材
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
本書基于編者多年程序設計語言教學的經驗,結合軟件開發工程實踐,精選典型實用的案例,分析詳盡完整,講解通俗易懂,充分體現“以例促學、以例帶學”的任務驅動理念,幫助初學者掌握Java語言的精髓,輕松學會運用面向對象的編程思想解決實際問題。全書輔以適當的項目拓展、延伸閱讀和微課視頻,使教學內容與工程實踐有效結合。
本書內容深入淺出,涵蓋Java語言的基本語法、面向對象的特征、實用類庫、異常處理、IO體系、集合框架、泛型、反射、圖形用戶界面設計、MySQL數據庫與JDBC編程等,可作為應用型本科院校數據科學與大數據技術相關專業的教材,也可作為想要從事大數據領域、Java程序開發領域工作人員及Java編程愛好者的參考書。
本書提供完整的電子課件、源代碼等豐富的配套教學資源,讀者可以從中國水利水電出版社網站(www.waterpub.com.cn)或萬水書苑網站(www.dgboyong.cn)免費下載。
內容實用——理論與實踐結合,重點突出應用
體系完善——構建完整的大數據專業解決方案
產教融合——高校企業共參與,對標行業標準
資源豐富——微課、課件、教案、源碼、答案
Java是目前主流的、極富創造力的一種面向對象程序設計語言,具有跨平臺、高安全、高性能等特點,加之其本身所具有的自動垃圾回收、異常處理、并行計算等高級特性,為各級Java應用提供了完善的保障機制。應用是考驗一門語言生存力的標準,Java語言的應用已經融入到人們生活的方方面面。從桌面到網絡應用、從小型移動設備的開發到大型復雜的企業級應用,隨處可見Java活躍的身影。更值得一提的是Java為大數據技術提供了相當大的支撐,大數據平臺Hadoop、分布式數據庫HBase等其他大數據相關技術大都是用Java語言實現的?梢妼W習Java語言對計算機類特別是數據科學與大數據技術專業的學生來說尤為重要。
本書以培養數據科學與大數據技術專業等計算機類應用型人才為目標,圍繞應用型工程實踐案例開展基礎知識點的講解。全書脈絡清晰,各章知識點詳盡完整,章與章之間內容相對獨立,卻又連貫始終。本書每章精選典型實用的案例,分析透徹,講解通俗易懂,充分體現“以例促學、以例帶學”的任務驅動理念。本書章節難度呈階梯式遞增,內容由淺入深,全面滲透面向對象程序設計方法,再配以適當的項目拓展、延伸閱讀和難點講解視頻,使教學內容與工程實踐有效結合。本書還配有完整的實踐指導教材《Java編程基礎實踐指導》,為讀者提供更加豐富的工程實踐項目,幫助讀者鞏固知識點、查漏補缺,培養編程思維,積累實踐經驗,快速掌握Java語言精髓,輕松學會運用面向對象編程思想解決實際問題,為以后學習Java高階開發打下堅實基礎。
本書編者(一線教師,常年參與項目研發,實踐經驗豐富)基于多年程序設計語言教學的經驗,結合軟件開發工程實踐,精心打造了本書。
對Java語言的基礎知識,如數據類型、流程控制、數組、類的封裝與繼承、多態、接口等進行系統講解。
對Java中的實用類庫,如包裝類、字符串、Math、Random和日期類進行詳細講解,筑牢編程基礎。
對Java中的基本應用,如IO體系、異常處理、集合、圖形用戶界面設計等,精選典型實用的案例,力圖做到觸類旁通。
對一些綜合應用,如MySQL數據庫與JDBC編程等內容結合具體案例進行應用層面的分析和講解,培養學習者良好的編程思想和思維模式。
在本書編寫過程中,注重對編程技巧與經驗的滲透,努力做到內容新穎、概念清晰、實用性強、通俗易懂,幫助讀者建立扎實的技術基礎和具體項目的應用能力。
本書由張煥生(負責統稿)、崔炳德任主編,孫曉磊、李亞娟、崔凌云、王建文任副主編。由于時間倉促及編者水平有限,書中不足和疏漏之處在所難免,懇請讀者批評指正。
編 者
2020年5月
1.1 Java的歷史 1
1.2 Java技術三大平臺 3
1.3 高級語言運行機制 3
1.3.1 語言運行機制 3
1.3.2 JRE 4
1.3.3 JDK 5
1.3.4 Java虛擬機(JVM) 5
1.4 Java語言的特點 6
1.5 Java開發環境的安裝與配置 7
1.5.1 JDK的下載 7
1.5.2 JDK的安裝與配置 8
1.6 開發工具Eclipse 10
1.7 第一個Java程序 11
本章小結 14
練習1 15
第2章 Java語言基礎 16
2.1 Java語言基本格式 16
2.2 Java語言的基本元素 17
2.2.1 Java語言使用的字符集 17
2.2.2 標識符 18
2.2.3 關鍵字與保留字 18
2.3 工程實踐中Java程序的書寫規范 19
2.3.1 Java程序的注釋 19
2.3.2 命名書寫規范 20
2.3.3 文件樣式及其他書寫規范 21
2.4 基本數據類型 21
2.4.1 變量和常量 21
2.4.2 數值型數據 22
2.4.3 字符型數據 24
2.4.4 布爾型數據 25
2.5 運算符與表達式 26
2.5.1 算術運算符與算術表達式 26
2.5.2 關系運算符與關系表達式 27
2.5.3 邏輯運算符與邏輯表達式 28
2.5.4 賦值運算符與賦值表達式 29
2.5.5 條件運算符與條件表達式 30
2.5.6 其他運算符 30
2.5.7 運算符的結合方向和優先級 31
2.6 基本類型的類型轉換 32
2.6.1 自動類型轉換 32
2.6.2 強制類型轉換 33
2.7 流程控制 33
2.7.1 分支結構 33
2.7.2 循環結構 37
2.7.3 循環控制 41
2.8 數據的接收:Scanner類 43
本章小結 45
練習2 45
第3章 類和對象 47
3.1 類和對象概述 47
3.1.1 類和對象的概念 47
3.1.2 定義類 48
3.1.3 創建與使用對象 49
3.1.4 構造器 51
3.2 類的方法成員 53
3.2.1 方法的聲明與調用 53
3.2.2 方法的參數傳遞機制 55
3.2.3 方法的遞歸 58
3.2.4 方法的重載 59
3.3 成員變量和局部變量 60
3.3.1 類變量和實例變量 60
3.3.2 this關鍵字 62
3.3.3 類成員與實例成員的使用規則 64
3.4 類的封裝 65
3.4.1 理解封裝 65
3.4.2 訪問控制符的使用 65
3.5 包 69
3.5.1 包的創建 69
3.5.2 包中類的引用 70
3.5.3 Java的常用包 70
3.6 final修飾變量 71
3.6.1 final修飾成員變量 71
3.6.2 final修飾局部變量 71
本章小結 72
練習3 72
項目拓展 74
第4章 Java實用類庫 76
4.1 數組 76
4.1.1 創建一維數組 77
4.1.2 初始化一維數組 78
4.1.3 使用一維數組 79
4.1.4 數組的基本操作 79
4.2 字符串 81
4.2.1 字符串的創建 81
4.2.2 字符串的常用方法 82
4.2.3 字符串的應用 85
4.3 StringBuffer類 87
4.3.1 創建StringBuffer對象 87
4.3.2 StringBuffer的常用方法 87
4.4 包裝類 88
4.4.1 包裝類對象的創建 88
4.4.2 包裝類的使用 89
4.5 Math類 91
4.6 其他類 92
4.6.1 Random類 92
4.6.2 日期時間類 93
本章小結 95
練習4 95
第5章 類的繼承與多態 98
5.1 類的繼承 98
5.1.1 繼承的特點 98
5.1.2 屬性的隱藏 99
5.1.3 方法的重寫 100
5.1.4 final關鍵字與終止繼承 101
5.1.5 super關鍵字 102
5.1.6 子類中重載父類的方法 105
5.1.7 類的層次結構 105
5.1.8 繼承與組合 106
5.2 多態 108
5.2.1 方法重載引發的編譯時多態性 108
5.2.2 引用多態引發的運行時多態性 108
5.3 抽象類 110
5.3.1 抽象方法 110
5.3.2 抽象類 111
5.4 接口 112
5.4.1 接口的定義 113
5.4.2 接口的繼承 114
5.4.3 接口的實現 114
5.4.4 抽象類與接口 116
5.5 內部類 116
5.5.1 非靜態內部類 117
5.5.2 靜態內部類 118
5.5.3 匿名內部類 118
5.5.4 Lambda表達式 120
本章小結 121
練習5 122
項目拓展 123
第6章 異常處理 125
6.1 異常的概念 125
6.2 異常類的層次 126
6.3 Java異常處理過程 128
6.4 自定義異常 132
6.5 Try-With-Resources 134
6.6 異常的使用原則 135
本章小結 136
練習6 136
第7章 輸入與輸出 137
7.1 什么是流 137
7.2 輸入輸出流的劃分 138
7.2.1 字節流類 138
7.2.2 字符流類 139
7.2.3 關閉流 140
7.3 Java的標準輸入/輸出 141
7.4 文件的操作 142
7.4.1 File類 142
7.4.2 目錄 145
7.5 文件輸入/輸出流 146
7.5.1 文件字節流 146
7.5.2 文件字符流 148
7.6 緩沖流 149
7.6.1 BufferedInputStream類與
BufferedOutputStream類 150
7.6.2 BufferedReader類與BufferedWriter類 152
7.7 數據流 153
7.8 對象的串行化 156
7.8.1 串行化的概念 156
7.8.2 串行化的方法 156
本章小結 160
練習7 161
第8章 集合與泛型 163
8.1 Java集合介紹 163
8.2 Collection接口與Iterator接口 164
8.2.1 Collection接口 164
8.2.2 Iterator接口 165
8.3 List集合 167
8.3.1 ArrayList 168
8.3.2 LinkedList 169
8.3.3 ArrayList與LinkedList的比較 170
8.4 Set集合 170
8.4.1 HashSet 170
8.4.2 TreeSet 172
8.4.3 Set實現類的性能分析 173
8.5 Queue隊列 173
8.5.1 Deque與ArrayDeque 174
8.5.2 PriorityQueue 175
8.6 Map集合 175
8.6.1 HashMap 177
8.6.2 TreeMap 178
8.6.3 HashMap與TreeMap的性能分析 178
8.7 泛型 179
8.7.1 Java 7泛型的菱形語法 179
8.7.2 泛型舉例 179
8.8 反射 180
本章小結 183
練習8 183
第9章 圖形用戶界面設計 184
9.1 AWT和Swing介紹 184
9.1.1 AWT 184
9.1.2 Swing 185
9.2 容器 185
9.2.1 JFrame類 185
9.2.2 簡單對話框(JOptionPane) 186
9.2.3 JPanel類 187
9.2.4 JScrollPane類 187
9.3 Swing常用組件 188
9.3.1 JButton(按鈕) 189
9.3.2 JLabel(標簽) 189
9.3.3 JTextField(文本框)和JPasswordField
(密碼輸入框) 189
9.3.4 JTextArea(文本域) 191
9.3.5 JRadioButton(單選按鈕) 192
9.3.6 JCheckBox(復選框) 193
9.3.7 JComboBox(選擇框) 193
9.3.8 JList(列表) 195
9.3.9 JTable(表格) 196
9.3.10 JTree(樹) 197
9.3.11 JMenu(菜單) 198
9.4 布局管理器 199
9.4.1 FlowLayout(流式布局)管理器 199
9.4.2 BorderLayout(邊界布局)管理器 200
9.4.3 GridLayout(網格布局)管理器 202
9.4.4 GridBagLayout(網格包布局)管理器 202
9.4.5 CardLayout(卡片布局)管理器 203
9.4.6 BoxLayout(箱式布局)管理器 205
9.4.7 空布局 205
9.5 交互式GUI程序的設計 206
9.5.1 事件處理概念與事件處理過程 206
9.5.2 匿名內部類與事件適配器 208
9.6 WindowBuilder插件 209
本章小結 210
練習9 210
項目拓展 210
第10章 MySQL數據庫與JDBC編程 213
10.1 安裝和配置MySQL數據庫 213
10.2 使用JDBC訪問數據庫 214
10.2.1 JDBC的概念 214
10.2.2 使用JDBC訪問數據庫的步驟 214
10.2.3 JDBC API簡介 215
10.3 處理異常 219
10.4 JDBC應用程序綜合實例 219
10.4.1 實例描述 219
10.4.2 程序的圖形用戶界面 220
10.4.3 程序設計 221
本章小結 232
練習10 233
參考文獻 234
- 輸水管線工程風險管理 [張勇 黨亥生 著]
- 民用航空飛機標準線路施工 [主編 王志敏 陳明]
- 不息的水脈—大運河講談錄 [趙珩 著]
- 實用運籌學 [主編 邢育紅 于晉臣]
- 三峽梯級電站水資源決策支持系統研究與開發 [姚華明 潘紅忠 湯正]
- 海南黎族民俗文化鑒賞 [龐國華 著]
- 石墨烯在太赫茲及中紅外頻段電磁器件設計中的應用 [李艷秀 莊華偉 著]
- 電子技術(第二版) [主編 覃愛娜 李飛]
- 辦公自動化高級應用 [陳萍 朱曉玉]
- 信息處理技術員考試32小時通關 [薛大龍]
- 電子產品設計案例教程(微課版)—基于嘉立創EDA(專業版) [王靜 莫志宏 陳學昌 丁紅]
- C程序設計實踐教程 [劉衛國]
- C程序設計(慕課版) [劉衛國]
- Web技術開發教程(基于.NET開源MVC框架) [王合闖 韓紅玲 王青正 陳海蕊]
- 商務英語翻譯教程(筆譯)(第四版) [主編 王軍平]
- 智慧零售技術與應用 [洪旭 著]
- 建設工程法規實務 [主編 余瀅]
- 商務秘書理論與實務(第三版) [主編 張同欽]
- 程序設計基礎實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- 勞動爭議處理實務 [主編 王秀卿 羅靜]
- 工程數學 [主編 郭立娟 王海]
- 語音識別理論與實踐 [主編 莫宏偉]
- 信息系統項目管理師章節習題與考點特訓(第二版) [主編 薛大龍]
- 武術基礎教程 [主編 李代勇 謝志民]
- 計算機網絡實訓教程 [主編 張浩軍 趙玉娟]
- 畫法幾何與機械制圖習題集(多學時) [主編 趙軍]
- HCIA-Datacom認證題庫分類精講 [主 編 韓立剛]
- SwiftUI完全開發 [李智威 著]
- 網絡規劃設計師備考一本通 [夏杰 編著]