本書是針對Java語言初學者編寫的基礎教程,書中不僅講解了Java程序設計的基礎知識,而且提供了大量實用性很強的編程實例。全書共分11章:Java語言概述、Java語言基礎、類與對象、繼承與接口、數組與字符串、Java的異常處理機制、Java常見類庫、輸入輸出及數據庫操作、多線程、Applet程序及應用和圖形用戶界面設計。
本書內容實用,結構清晰,實例豐富,可操作性強,可作為高等學校Java程序設計課程的教材,也可作為計算機相關專業的培訓和自學教材。
2013年10月被評為北京市高等教育精品教材
本書附配有PPT教學課件、案例源文件和兩個附錄文檔
《Java基礎教程》(第2版)已于2013年10月被評為北京市高等教育精品教材。為反映Java發展的新特點和新進展,并使該教材的結構更清晰,內容描述更簡潔明了,以便更適合初學者學習,本書編者對部分章節進行了修改和完善,有的增添了新的實例、新的注解和新的說明,有的則對內容進行了重新組織。
修改后的第3版仍然為11章。
第1章講述Java語言發展歷程、Java語言的特點以及開發平臺和開發過程;
第2章介紹Java語言編程的基礎語法知識;
第3章講述類與對象,體現了Java作為一種純粹的面向對象編程語言的編程特點;
第4章講述繼承與接口,以及特殊類;
第5章介紹數組和字符串的特點及使用;
第6章介紹Java語言的異常處理機制;
第7章介紹Java類庫結構及常用類庫;
第8章介紹Java語言中輸入輸出流和數據庫操作方法;
第9章介紹Java語言多線程的含義、特點及實現;
第10章介紹Applet程序的概念及其應用;
第11章介紹如何在Java語言中進行圖形用戶界面設計及處理功能的實現。
本書附配有PPT教學課件、案例源文件和兩個附錄文檔。
本書由吳仁群編寫。在編寫過程中,編者參考了本書“參考文獻”所列舉的圖書,得到了清華大學出版社的大力支持,在此對“參考文獻”中所列圖書的作者及清華大學出版社表示深深的感謝。本書的出版得到了北京印刷學院學科建設項目資助。
由于時間倉促,書中難免存在一些不足之處,敬請讀者批評指正。
編 者
2016年1月
第1章 Java語言概述 1
1.1 Java語言的特點及相關概念 1
1.1.1 Java語言的發展歷程 1
1.1.2 Java語言的特點 2
1.1.3 Java虛擬機(JVM) 4
1.2 Java程序開發 6
1.2.1 運行平臺 6
1.2.2 Java程序開發過程 11
1.3 綜合應用 14
1.4 本章小結 16
1.5 思考和練習 16
第2章 Java語言基礎 17
2.1 Java程序概況 17
2.1.1 Java程序結構 17
2.1.2 Java注釋 18
2.1.3 Java關鍵字 19
2.1.4 Java標識符 19
2.1.5 變量與常量 20
2.2 基本數據類型 21
2.2.1 基本數據類型概況 21
2.2.2 基本數據類型轉換 26
2.3 運算符和表達式 28
2.3.1 算術運算符與算術表達式 28
2.3.2 關系運算符與關系表達式 31
2.3.3 邏輯運算符與邏輯表達式 31
2.3.4 賦值運算符與賦值表達式 31
2.3.5 位運算符 32
2.3.6 條件運算符 34
2.3.7 instanceof運算符 34
2.3.8 一般表達式 34
2.4 Java語句 36
2.4.1 Java語句概述 36
2.4.2 分支語句 36
2.4.3 循環語句 42
2.4.4 跳轉語句 44
2.5 綜合應用 48
2.6 本章小結 51
2.7 思考和練習 51
第3章 類與對象 55
3.1 面向對象基礎 55
3.1.1 編程語言的4個發展階段 55
3.1.2 面向過程的程序設計 56
3.1.3 面向對象的程序設計 57
3.1.4 兩種程序設計語言的簡單
比較 59
3.2 類 60
3.2.1 類的聲明 60
3.2.2 成員變量的聲明 61
3.2.3 成員方法 63
3.3 對象 65
3.3.1 對象的創建 65
3.3.2 對象的使用 66
3.3.3 對象的消亡 67
3.4 變量 69
3.4.1 類中變量的分類 69
3.4.2 變量的內存分配 71
3.4.3 實例變量和靜態變量的簡單比較 72
3.4.4 變量初始化與賦值 74
3.5 方法 77
3.5.1 方法概述 77
3.5.2 方法分類 78
3.5.3 方法調用中的數據傳遞 81
3.5.4 三個重要方法 85
3.5.5 方法的遞歸調用 89
3.6 package和import語句 91
3.6.1 package語句 91
3.6.2 import語句 93
3.7 訪問權限 94
3.7.1 類的訪問控制 94
3.7.2 類成員的訪問控制 97
3.8 綜合應用 100
3.9 本章小結 106
3.10 思考和練習 107
第4章 繼承與接口 111
4.1 繼承 111
4.1.1 繼承的含義 111
4.1.2 子類的繼承性訪問控制 113
4.1.3 子類對象的構造過程 116
4.1.4 子類的內存分布 116
4.1.5 子類對象的成員初始化 118
4.1.6 成員變量的隱藏 120
4.1.7 方法的重載與方法的覆蓋 121
4.1.8 this關鍵字 125
4.1.9 super關鍵字 128
4.1.10 對象的上下轉型對象 129
4.2 接口 130
4.2.1 abstract類 130
4.2.2 接口的含義 132
4.2.3 接口回調 134
4.2.4 接口與抽象類的異同 135
4.3 特殊類 135
4.3.1 final類 135
4.3.2 內部類 136
4.4 綜合應用 137
4.5 本章小結 142
4.6 思考和練習 142
第5章 數組與字符串 145
5.1 數組 145
5.1.1 數組定義及說明 145
5.1.2 數組應用舉例 149
5.2 字符串 153
5.2.1 String類 153
5.2.2 StringBuffer類 157
5.2.3 應用舉例 158
5.3 綜合應用 160
5.4 本章小結 164
5.5 思考和練習 164
第6章 Java的異常處理機制 167
6.1 異常的含義及分類 167
6.2 異常處理 168
6.2.1 異常處理的含義及必要性 168
6.2.2 異常處理的基本結構 169
6.2.3 多個catch塊 170
6.2.4 finally語句 171
6.3 兩種拋出異常的方式 173
6.3.1 throw——直接拋出 173
6.3.2 throws——間接拋出異常(聲明異常) 177
6.4 自定義異常 178
6.5 常見異常 180
6.6 綜合應用 180
6.7 本章小結 182
6.8 思考和練習 182
第7章 Java常見類庫 183
7.1 Java類庫的結構 183
7.2 常用類 184
7.2.1 System類 184
7.2.2 Math類 190
7.2.3 Random類 191
7.2.4 基本數據類型的包裝類 193
7.2.5 Vector類 195
7.2.6 Stack類 199
7.2.7 Queue類 201
7.2.8 Arrays類 203
7.2.9 哈希表類Hashtable 207
7.3 本章小結 209
7.4 思考和練習 209
第8章 輸入輸出及數據庫操作 211
8.1 輸入和輸出 211
8.1.1 流的含義 211
8.1.2 流的層次結構 212
8.1.3 標準輸入輸出 213
8.1.4 File類 215
8.1.5 FileInputStream類和FileOutputStream類 217
8.1.6 DataInputStream類和DataOutputStream類 220
8.1.7 隨機訪問文件 224
8.1.8 Reader類和Writer類 227
8.1.9 IOException類的4個子類 228
8.1.10 綜合應用 228
8.2 數據庫操作 233
8.2.1 ODBC概述 233
8.2.2 JDBC概述 235
8.2.3 使用JDBC-ODBC技術訪問數據庫 237
8.2.4 綜合應用 240
8.2.5 基本SQL語句 244
8.3 建立數據源的操作 246
8.4 本章小結 248
8.5 思考和練習 248
第9章 多線程 251
9.1 多線程的概念 251
9.2 線程類 252
9.2.1 多線程編程中常用的常量和方法 252
9.2.2 線程的生命周期 253
9.2.3 創建多線程的方法 254
9.3 資源的協調與同步 258
9.3.1 線程調度模型 258
9.3.2 資源沖突 260
9.3.3 同步方法 261
9.4 線程間通信 264
9.4.1 共享變量和方法封裝在一個類中 264
9.4.2 通過系統方法實現線程通信 265
9.5 本章小結 269
9.6 思考和練習 270
第10章 Applet程序及應用 271
10.1 Applet程序基礎 271
10.1.1 Applet程序概述 271
10.1.2 Applet類 274
10.1.3 Applet程序的生命周期 275
10.1.4 Applet的顯示 275
10.1.5 Applet程序和Application程序結合使用 277
10.2 Applet程序典型應用 280
10.2.1 圖形繪制 280
10.2.2 獲取圖像 284
10.2.3 音頻處理 285
10.2.4 動畫處理 287
10.3 綜合應用 290
10.4 本章小結 292
10.5 思考和練習 292
第11章 圖形用戶界面設計 293
11.1 Java AWT和Swing基礎 293
11.1.1 Java的AWT和Swing概述 293
11.1.2 Java的AWT組件和Swing組件 294
11.1.3 利用AWT組件和Swing 組件進行程序設計的基本步驟 296
11.2 常用容器 297
11.2.1 框架 297
11.2.2 面板 300
11.2.3 滾動窗口 302
11.2.4 菜單設計 304
11.2.5 對話框 307
11.3 布局管理器 310
11.3.1 FlowLayout布局 310
11.3.2 BorderLayout布局 311
11.3.3 GridLayout布局 314
11.3.4 CardLayout布局 314
11.3.5 null布局 316
11.4 事件處理 317
11.4.1 委托事件模型 317
11.4.2 鍵盤事件 321
11.4.3 鼠標事件 322
11.5 常用組件 324
11.5.1 按鈕 325
11.5.2 標簽 328
11.5.3 文本行 330
11.5.4 文本域 332
11.5.5 復選框 333
11.5.6 單選框 336
11.5.7 選擇框 339
11.5.8 列表 340
11.6 綜合應用 343
11.7 本章小結 350
11.8 思考和練習 351
參考文獻 353