Java程序設計實例教程
-
【作 者】畢廣吉 編著
【I S B N 】978-7-5084-4665-3
【責任編輯】宋俊娥
【適用讀者群】本科
【出版時間】2007-06-01
【開 本】16開本
【裝幀信息】平裝(光膜)
【版 次】第1版
【頁 數】276
【千字數】
【印 張】
【定 價】¥26
【叢 書】21世紀高等院校規劃教材
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
本書由淺入深地介紹Java編程,特點是:第一,本書注重基礎知識、基本概念和基本編程方法的介紹,學習本書時不要求讀者曾經學習過C、C++等語言,而是直接講述Java的基本概念和編程方法;第二,本書注重實踐過程,用給出的90個具有圖形用戶界面的、有針對性的、可供實用的實例來闡述Java的編程方法。如果讀者把這些實例編制完成并運行成功,對每一條語句都能正確理解,就基本掌握了Java程序設計。
本書可作為高等院校Java語言程序設計課程的教材,也可供其他初學Java語言的讀者學習。
Java語言是典型的面向對象的程序設計語言,與面向過程的編程語言相比,學習起來難度較大,使一些初學者望而卻步或半途而廢。然而正是Java語言的面向對象的特點,使它具有面向過程的編程語言所不具有的諸多優越性,代表了程序設計的最新思想和方法,例如,代碼的可重用性、跨平臺的特點、適合網上運行、支持多線程等,而且學習Java語言又是進一步學習數據庫、JavaScript、JSP等知識的基礎,所以大學本科學生學習Java是必要的。
Java語言的語法結構與C、C++相似,類的繼承機制等與C++相似,于是圖書市場上相當一些教材總是以C、C++為基礎來講解Java。有的書即使不以C、C++為基礎,也經常提到“在C++中……”,似乎學習Java就必須先學習C、C++似的,這種書給初學者帶來很多困難和困惑。因此,很多讀者都在尋找一種真正適合初學者學習的Java教材,很多教師也需要真正適合教學的教材。
本書正是針對這樣的需求編寫而成的Java語言基礎教程。本書由淺入深地介紹Java編程,在有限的篇幅內,以介紹Java基礎編程為主,包括繼承、多態、重載、覆蓋、接口、封裝等面向對象程序設計的核心概念和機制,Applet程序設計、Java常用類、圖形用戶界面、組件、繪圖與圖像、異常處理、多線程與動畫、文件操作、網絡編程等,而那些與Java有關的進一步的內容(如JSP等),為防止內容分散沒有收入在本書中,而且這些內容并不是靠一章的篇幅就能講清的。
本書特點如下:
(1)注重基礎知識、基本概念和基本編程方法的介紹,真正適合初學者。學習本書時不要求讀者曾經學習過C、C++等語言,不像很多書那樣借用C、C++的概念對比進行解釋,而是直接講述Java的基本概念和編程方法,使沒有學習過C、C++的讀者能直接學好Java編程。
(2)注重實踐過程,使用實例來闡述和示范Java的編程方法。本書給出了90個具有圖形用戶界面的、有針對性的、可供實用的實例和一大批小例子,目錄中給出了這些實例的索引,其源代碼文件可以從中國水利水電出版社網站(http://www.waterpub.com.cn/ softdown/)下載。學習編程最好的方法就是學習實例,如果讀者把這些實例編制完成并對每一條語句都能正確理解,就基本掌握了Java程序設計方法。
參加本書編寫工作的還有任敏、畢之瑩、韓大勇等。本書配套的電子教案(PPT)由苑志旺、錢蓓蓓、鐘燕蘭、胡世昌制作,謹在此表示感謝。
本書可作為高等院校Java語言程序設計課程的教材,也可供其他初學Java語言的讀者學習。本書的所有實例都在Windows 98/2000/XP操作系統以及Java 1.3.0環境下運行通過。
畢廣吉
2007年4月
前言
第1章 Java編程語言概述 1
本章學習目標 1
1.1 Java概述 1
1.2 Java的軟件環境 2
1.2.1 安裝Java軟件開發包 2
1.2.2 配置環境變量 2
1.2.3 安裝幫助文檔 3
1.2.4 安裝UltraEdit.exe編輯器 3
1.3 Application程序與Applet程序 3
1.3.1 Java的Application程序與
Applet程序 3
1.3.2 Java程序的編輯、編譯和運行 3
1.3.3 第一個Application程序 4
1.3.4 第一個Applet程序 6
1.3.5 改進第一個Applet程序 8
1.4 HTML超文本標記語言簡介 10
1.5 UltraEdit編輯軟件的設置 12
1.6 初識類與對象 12
1.7 本章小結 13
1.8 習題 13
第2章 Java語言基礎 15
本章學習目標 15
2.1 標識符 15
2.2 關鍵字 15
2.3 基本數據類型 16
2.3.1 基本數據類型簡介 16
2.3.2 關于基本數據類型的說明 16
2.3.3 基本數據類型的自動轉換 17
2.4 運算符 18
2.4.1 算術運算符 18
2.4.2 自增、自減運算符 18
2.4.3 關系運算符 19
2.4.4 邏輯運算符 20
2.4.5 位運算符 20
2.4.6 條件運算符 21
2.4.7 賦值運算符 22
2.4.8 運算符的優先級和結合性 23
2.5 常量、變量和表達式 24
2.5.1 變量 24
2.5.2 常量 25
2.5.3 表達式 26
2.6 程序流程控制結構 27
2.6.1 選擇結構 27
2.6.2 循環結構 28
2.6.3 控制轉移語句 30
2.6.4 其他語句 30
2.7 注釋 30
2.8 本章小結 31
2.9 習題 31
第3章 類與對象 34
本章學習目標 34
3.1 類 34
3.1.1 類的聲明 34
3.1.2 類體 34
3.1.3 類的成員變量 35
3.1.4 類的成員方法 35
3.2 Java的類庫 36
3.2.1 自定義類與類庫 36
3.2.2 Java的常用類庫 36
3.2.3 使用類庫的方法 37
3.3 對象 37
3.3.1 對象的聲明和實例化 37
3.3.2 引用成員變量和調用成員方法 38
3.3.3 類的特殊方法——構造方法 38
3.4 本章小結 38
3.5 習題 39
第4章 面向對象的程序設計 41
本章學習目標 41
4.1 類的封裝 41
4.2 類的繼承 41
4.2.1 創建子類 41
4.2.2 this對象和super對象 45
4.2.3 final關鍵字和abstract關鍵字 47
4.3 類的多態性 48
4.3.1 多態的概念 48
4.3.2 方法的重載 48
4.3.3 方法的覆蓋 49
4.4 靜態類成員 51
4.5 接口 52
4.6 包的概念 54
4.7 本章小結 55
4.8 習題 55
第5章 Java常用類 58
本章學習目標 58
5.1 常用的Java類 58
5.1.1 對象類Object 58
5.1.2 數據類型類 59
5.1.3 數學類Math 59
5.1.4 系統類System 60
5.1.5 Class類 61
5.1.6 日期類Date和日歷類Calendar 62
5.2 數組和字符串 63
5.2.1 數組 63
5.2.2 字符串String類 66
5.2.3 Application應用程序的命令行參數 72
5.2.4 字符串StringBuffer類 72
5.2.5 字符串數組 73
5.3 Applet類 73
5.3.1 Applet類介紹 73
5.3.2 Applet類的方法 74
5.3.3 從HTML向Applet傳遞參數
的方法 76
5.4 本章小結 77
5.5 習題 77
第6章 圖形用戶界面設計 79
本章學習目標 79
6.1 圖形用戶界面設計與java.awt包 79
6.2 組件Component的概念 80
6.2.1 組件類及其子類 80
6.2.2 組件類的方法 80
6.3 事件Event 81
6.3.1 事件類AWTEvent 81
6.3.2 事件類的接口interface 82
6.3.3 事件適配器Adapter 83
6.4 按鈕組件Button 83
6.4.1 按鈕組件的方法和事件 83
6.4.2 按鈕的使用 84
6.5 與文本有關的組件 86
6.5.1 標簽組件Label 86
6.5.2 使用標簽組件 87
6.5.3 TextComponent類 88
6.5.4 文本行組件TextField 89
6.5.5 文本域組件TextArea 90
6.5.6 使用文本行和文本域 91
6.6 與選項有關的組件 92
6.6.1 復選框 93
6.6.2 單選按鈕組CheckboxGroup 95
6.7 與列表有關的組件 97
6.7.1 選擇框組件Choice 98
6.7.2 列表框組件List 100
6.8 滾動條組件Scrollbar 103
6.9 顏色類和字體類 105
6.9.1 顏色類Color 106
6.9.2 字體類Font 108
6.10 容器類及其子類 109
6.10.1 容器類Container 110
6.10.2 框架類Frame 110
6.10.3 面板類Panel 115
6.10.4 對話框Dialog 118
6.11 布局管理器 122
6.11.1 FlowLayout布局 122
6.11.2 BorderLayout布局 122
6.11.3 GridLayout布局 124
6.11.4 GridBagLayout布局 125
6.11.5 null布局 128
6.12 菜單 130
6.12.1 下拉菜單 130
6.12.2 彈出式菜單 135
6.13 Java中的漢字編碼 139
6.14 本章小結 141
6.15 習題 141
第7章 繪圖與圖像 144
本章學習目標 144
7.1 Java繪圖基礎 144
7.1.1 繪圖容器與坐標系 144
7.1.2 畫布類Canvas 144
7.1.3 paint方法和repaint方法 145
7.1.4 繪圖類Graphics 150
7.2 在組件上繪圖 154
7.2.1 繪制任意曲線 154
7.2.2 用drawString和drawChars方法
繪制字符 156
7.3 繪圖實例 158
7.3.1 徒手繪圖 158
7.3.2 橡皮筋畫法 160
7.4 顯示圖像 163
7.4.1 利用Graphics類顯示圖片 163
7.4.2 制作相冊 164
7.4.3 連續位圖動畫 167
7.4.4 更換圖標 168
7.5 本章小結 169
7.6 習題 170
第8章 異常處理 172
本章學習目標 172
8.1 錯誤與異常的概念 172
8.2 異常類 172
8.2.1 Throwable類 172
8.2.2 常用的異常類 173
8.3 異常的處理 174
8.3.1 程序異常的實例 174
8.3.2 try-catch-finally結構 177
8.3.3 主動拋出異常 180
8.4 自定義異常類 184
8.5 將異常交系統處理 187
8.6 本章小結 187
8.7 習題 188
第9章 多線程機制與動畫 190
本章學習目標 190
9.1 線程的建立 190
9.1.1 進程與線程的概念 190
9.1.2 繼承Thread類建立線程 190
9.1.3 用Runnable接口建立線程 193
9.1.4 用Runnable接口建立多線程 196
9.2 關于線程的進一步討論 198
9.2.1 線程的狀態 198
9.2.2 線程的優先級 199
9.2.3 線程組 199
9.3 圖像動畫 201
9.3.1 用線程控制動畫 202
9.3.2 定時器 203
9.3.3 定時器的進一步改進 206
9.3.4 用定時器控制動畫的方法 209
9.4 本章小結 212
9.5 習題 212
第10章 文件操作 214
本章學習目標 214
10.1 文件對話框類FileDialog 214
10.2 文件類File 220
10.3 流的概念 221
10.3.1 數據流的概念 221
10.3.2 標準的輸入輸出 222
10.3.3 java.io包中的數據流類 223
10.4 順序讀寫文件 225
10.4.1 用文件輸入流順序讀文件 225
10.4.2 用字節流順序寫文件 227
10.4.3 用字符流順序寫文件 229
10.4.4 用文件輸入輸出流讀寫文件 230
10.5 使用LineNumberReader類 235
10.6 隨機讀寫文件 237
10.7 獲取文件信息 240
10.7.1 SimpleDateFormat類 240
10.7.2 獲取文件屬性 241
10.8 運行可執行文件 243
10.8.1 Runtime類 243
10.8.2 在Java中執行EXE文件 244
10.8.3 選擇一個可執行文件并運行 244
10.9 本章小結 247
10.10 習題 247
第11章 網絡程序設計 249
本章學習目標 249
11.1 Java的網絡功能 249
11.2 使用URL類 249
11.2.1 URL基礎知識 249
11.2.2 URL類 250
11.3 URLConnection類 253
11.4 Java顯示網頁的方法 255
11.4.1 AppletContext接口的showDocument
方法 255
11.4.2 在Java程序中顯示網頁 255
11.5 Socket通信 257
11.5.1 Socket通信基礎知識 257
11.5.2 Socket通信實例服務器端 258
11.5.3 Socket通信實例客戶端 260
11.5.4 Socket通信實例的使用 262
11.6 本章小結 263
11.7 習題 263
實例索引
實例 遞歸累加 4
實例 加法 6
實例 改進加法 8
實例 類的繼承 41
實例 this引用的例子 45
實例 super引用的例子 46
實例 方法的重載 48
實例 方法的覆蓋 49
實例 類變量 51
實例 接口 53
實例 使用Date類和Calendar類 62
實例 求一個數組中最大的元素及其下標 64
實例 用數組的數組存放楊輝三角形 65
實例 獲取字符串長度的例子 67
實例 字符串比較 68
實例 取子字符串 68
實例 在字符串中查找字符 69
實例 字符串轉換成數值 70
實例 數值轉換成字符串之一 70
實例 數值轉換成字符串之二 71
實例 解析命令行參數 72
實例 字符串數組 73
實例 測試Applet類中方法的用途 74
實例 從HTML向Applet傳遞參數 76
實例 按鈕的使用 84
實例 標簽組件的例子 87
實例 文本行和文本域的使用 91
實例 復選框組件的使用 93
實例 單選按鈕組的使用 95
實例 選擇框組件 98
實例 用列表框實現單選、多選并響應單擊
和雙擊事件 101
實例 滾動條組件的使用 104
實例 用四種方法創建紅色 107
實例 使用字體 108
實例 使用框架 111
實例 框架的事件 113
實例 面板類的用法 116
實例 對話框的實例 119
實例 測試BorderLayout布局的效果 123
實例 測試GridLayout布局的效果 124
實例 使用GridBagLayout布局 126
實例 使用null布局 128
實例 下拉菜單的實例 132
實例 彈出式菜單的使用 136
實例 漢字編碼 139
實例 在Canvas上繪圖 145
實例 在Applet上繪圖 149
實例 使用繪圖方法繪制圖形 152
實例 旋轉的斜橢圓 154
實例 繪制字符和字符串 156
實例 徒手繪圖 158
實例 用橡皮筋畫法繪制直線段 160
實例 在Applet中顯示位圖 163
實例 相冊 165
實例 連續位圖動畫 167
實例 更換圖標 168
實例 不完善的除法計算器1 174
實例 不完善的除法計算器2 176
實例 除法計算器 178
實例 完善整數除法 181
實例 自定義異常類 184
實例 畢達哥拉斯數和完全平方數 191
實例 滾動字符串 194
實例 時鐘和字符串 196
實例 多線程 200
實例 改進連續位圖動畫 202
實例 定時器 204
實例 定時器的進一步改進 206
實例 用定時器控制動畫 209
實例 使用對話框選擇文件 215
實例 標準輸入輸出 222
實例 打開并讀取文件 225
實例 用字節流寫文件 227
實例 用字符流寫文件 229
實例 復制文件 230
實例 復制文件之二 231
實例 為源程序加行號 235
實例 隨機讀寫文件 238
實例 文件屬性列表 241
實例 運行可執行文件1 244
實例 運行可執行文件2 244
實例 用openStream讀URL文件 251
實例 使用URLConnection類讀URL文件 253
實例 用showDocument顯示網頁內容 255
實例 Socket通信實例服務器端程序 258
實例 Socket通信實例客戶端程序 260
- 面向對象程序設計 [主編 張勇 張平華 趙小龍]
- Java Web應用技術項目化教程 [黃日勝 方阿麗]
- JavaScript與jQuery項目化教程(活頁式) [主編 林灃 藍雪燕 宋家慧]
- 網站前端技術案例教程(HTML+CSS+JavaScript)(第二版) [黃華升]
- Java編程基礎案例式教程 [主編 陳艷華 唐春蘭]
- Java面向對象程序設計(微課版) [主編 謝先偉 王海洋]
- Java面向對象程序設計 [主編 張立敏 鄒海濤]
- Java Web開發技術任務驅動式教程 [金靜梅]
- Java編程基礎 [張煥生 崔炳德]
- Java編程基礎實踐指導 [張煥生 陳勇 崔炳德]
- Java基礎編程(微課版) [主編 王海洋 吳科宏 謝先偉]
- 12歲開始學JavaScript和Web應用 [TENTO 著 徐樂群 譯]
- Java程序設計簡明教程 [黃能耿 黃致遠 編著]
- Java程序設計 [主編 張繼軍]
- Java基礎應用與實戰 [彭東海 王志和 張思奇]
- Java Web開發技術與項目實戰 [主編 羅如為]
- Java程序設計案例教程 [主 編 寧淑榮 楊國興]
- Java程序設計 [甘霞]
- Web前端開發從學到用完美實踐HTML5+CSS3+JavaScript+jQuery+AJAX+AngularJS(第2版) [阮曉龍]
- Java程序設計實訓教程 [主編 寧淑榮 楊國興]
- 網站前端技術案例教程(HTML+CSS+JavaScript) [黃華升]
- Java程序設計習題解答及上機指導 [李素若]
- Java核心API編程 [主編 肖睿 禹晨 馬凌]
- Java Web開發實戰 [主編 肖睿 高海波 徐申]
- Java面向對象編程 [肖睿 李志勇]
- Java面向對象程序設計 [主編 肖奎 姚競]
- Java面向對象程序設計 [主編 陳占偉]
- Java Web應用開發 [萬青 楊智勇]
- Bootstrap與jQuery UI框架設計 [主編 肖睿 吳振宇]
- Java ME手機應用程序開發 [易燦 李志勇 編著]