Java程序設計實訓教程
-
【作 者】主編 寧淑榮 楊國興
【I S B N 】978-7-5170-6121-2
【責任編輯】封裕
【適用讀者群】本專通用
【出版時間】2017-12-20
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數】180
【千字數】271
【印 張】11.25
【定 價】¥26
【叢 書】普通高等教育“十三五”規劃教材(軟件工程專業)
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
本書精心設計了4個實訓:掃雷游戲、網絡五子棋、棋譜的保存與回放、學生成績管理系統,介紹Java在應用軟件開發中用到的主要技術,并體現面向對象的設計思想。對于Java中的輸入輸出、數據庫、異常處理、網絡編程、界面編程等都有比較深入的訓練。
本書可作為計算機類專業Java實訓、Java課程設計等課程的教材,也可作為學生畢業設計以及Java程序設計愛好者的參考書。
本書配有電子教案和源代碼,讀者可以到中國水利水電出版社網站和萬水書苑上免費下載,網址為http://www.waterpub.com.cn/softdown/和http://www.dgboyong.cn。
精編實例程序——著重培養面向對象的設計思想。
實踐教學指導——跟隨實例步驟輕松掌握開發技能。
培養扎實基礎——內容由淺入深,循序漸進地引導教學。
前 言
Java是目前使用最廣泛的語言之一。對于軟件開發人員來說,掌握Java語言基礎并擁有使用Java進行軟件開發的能力是非常重要的,因此大多數與計算機相關的專業都開設了Java程序設計課程。
Java程序設計是一門實踐性很強的課程(任何一種計算機語言課程皆是),僅僅掌握Java的基本語法知識,與能利用Java進行軟件開發還有很大的差距。掌握Java基本知識后,應該通過大量的編程實踐來逐步提高利用Java進行軟件開發的能力。本書精心設計了4個實訓,詳細介紹具體的開發過程,讀者可以跟隨書中介紹的步驟輕松完成實訓程序的開發。
本書由4個實訓組成:掃雷游戲、網絡五子棋、棋譜的保存與回放、學生成績管理系統,涉及的主要知識有異常處理、輸入輸出流、數據庫編程、多線程和網絡編程等。
本書中的所有程序都由作者親自編寫,并在JDK1.6環境下調試通過,實例中用到的數據庫是MySQL數據庫。
為了方便教師教學和學生學習,本書提供用PowerPoint制作的電子教案,教師可根據具體情況進行必要的修改后使用。
本書由寧淑榮、楊國興任主編,金忠偉、李田英任副主編,其中實訓1至實訓3由寧淑榮編寫,實訓4由楊國興、金忠偉和李田英共同編寫。
本書的編寫和出版得到了“北京聯合大學規劃教材建設項目”資助,特此感謝。
由于作者水平有限,書中不妥之處在所難免,懇請專家與讀者批評指正。
編 者
2017年10月
前言
實訓1 掃雷游戲 1
1.1 系統設計 1
1.1.1 需求分析 1
1.1.2 類的設計 3
1.2 創建主窗口 4
1.2.1 創建項目 5
1.2.2 MineFrame類 5
1.2.3 主程序類Saolei 7
1.3 MinePanel類和Block類 8
1.3.1 幾個輔助類 8
1.3.2 Block類 9
1.3.3 MinePanel類 12
1.3.4 將雷區加入到MineFrame中 14
1.4 實現掃雷功能 16
1.4.1 翻開小方塊 16
1.4.2 處理輸贏以及搜索方法 20
1.4.3 加快掃雷進程 22
1.4.4 重新開始游戲 23
1.5 選擇游戲難度級別 23
1.5.1 在MineFrame類中添加grade屬性 23
1.5.2 自定義難度對話框 24
1.5.3 完善菜單監聽器類 26
1.6 實現計時功能 27
1.6.1 UpdateTimeTask類 27
1.6.2 啟動計時與終止計時 27
1.7 掃雷排行榜 28
1.7.1 Record類 28
1.7.2 RecordDao類 30
1.7.3 用于輸入游戲者名字的對話框類 31
1.7.4 顯示排行榜的對話框類 32
1.7.5 實現排行榜功能 34
1.8 附加功能 36
1.8.1 添加sound()方法 36
1.8.2 準備音頻文件 37
1.8.3 播放音頻文件 37
1.9 作業 37
實訓2 網絡五子棋 38
2.1 單機版五子棋游戲 39
2.1.1 五子棋游戲窗口制作 40
2.1.2 創建棋盤類 41
2.1.3 創建棋子類 42
2.1.4 實現單擊鼠標下棋 44
2.1.5 判斷贏棋 46
2.1.6 實現工具欄上的功能 49
2.1.7 改變鼠標的形狀 50
2.2 服務器端界面制作 51
2.3 創建客戶端界面 52
2.3.1 創建主窗口和棋盤 52
2.3.2 創建客戶端界面右側的三個類 53
2.3.3 創建客戶端界面下方的控制面板類 56
2.4 實現“連接主機”按鈕的功能 56
2.4.1 連接服務器獲取用戶名 57
2.4.2 將已經連接的客戶端添加到用戶
列表中 60
2.5 實現“加入游戲”按鈕的功能 64
2.5.1 客戶端申請加入后對方選擇同意
或拒絕 65
2.5.2 完成猜棋并準備好下棋 70
2.6 實現下棋功能 73
2.6.1 客戶端向服務器發送下棋消息 74
2.6.2 服務器接收消息并處理 75
2.6.3 客戶端接收消息并處理 76
2.7 實現“放棄游戲”按鈕的功能 78
2.7.1 Command類添加常量 78
2.7.2 添加“放棄游戲”按鈕的響應代碼 78
2.7.3 在Communication類中添加
giveup()方法 78
2.7.4 服務器接收giveup命令并處理 79
2.8 加入計時功能 79
2.8.1 設計計時線程類 79
2.8.2 猜先后啟動倒計時線程 80
2.9 完善“關閉程序”按鈕的功能 81
2.9.1 在Command類中添加命令 81
2.9.2 客戶端向服務器發送命令 81
2.9.3 服務器處理quit命令 82
2.9.4 客戶端處理delete命令 82
2.10 作業 82
實訓3 棋譜的保存與回放 84
3.1 創建數據庫 84
3.1.1 數據庫設計 84
3.1.2 數據庫創建 85
3.2 用戶管理 87
3.2.1 數據庫連接類 87
3.2.2 用戶管理 88
3.3 用戶注冊和登錄 92
3.3.1 準備工作 93
3.3.2 用戶登錄 94
3.3.3 用戶注冊 98
3.4 記錄棋局和棋譜 101
3.4.1 記錄棋局 102
3.4.2 記錄棋譜 108
3.5 查詢棋局和棋譜欣賞 111
3.5.1 查詢棋局 111
3.5.2 棋譜欣賞 115
3.6 作業 119
實訓4 學生成績管理系統 120
4.1 系統設計 120
4.1.1 需求分析 120
4.1.2 數據庫設計 124
4.1.3 類的設計 124
4.2 工具類 125
4.2.1 DBConnection類 125
4.2.2 CreateDatabase類 127
4.3 實體類 129
4.3.1 班級實體類ClassEntity 129
4.3.2 學生實體類Student 129
4.3.3 課程實體類Course 131
4.3.4 成績實體類Score 132
4.4 數據訪問類 133
4.4.1 ClassDao類 133
4.4.2 StudentDao類 136
4.4.3 CourseDao類 139
4.4.4 ScoreDao類 141
4.5 主窗口類 144
4.6 班級管理 146
4.7 學生管理 152
4.8 成績管理 159
4.8.1 準備工作 159
4.8.2 成績錄入與修改 162
4.8.3 成績查詢 167
4.9 作業 171
參考文獻 172
- 實用運籌學 [主編 邢育紅 于晉臣]
- 電子技術(第二版) [主編 覃愛娜 李飛]
- C程序設計實踐教程 [劉衛國]
- C程序設計(慕課版) [劉衛國]
- 程序設計基礎實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- 勞動爭議處理實務 [主編 王秀卿 羅靜]
- 工程數學 [主編 郭立娟 王海]
- 語音識別理論與實踐 [主編 莫宏偉]
- 武術基礎教程 [主編 李代勇 謝志民]
- 計算機網絡實訓教程 [主編 張浩軍 趙玉娟]
- 畫法幾何與機械制圖習題集(多學時) [主編 趙軍]
- SwiftUI完全開發 [李智威 著]
- 電工電子技術基礎 [主編 劉 軍 楊國龍 劉天成]
- MySQL數據庫項目式教程 [陳亞峰]
- 機械設計基礎(第二版) [主編 田亞平 李愛姣]
- 畫法幾何與機械制圖 [主編 趙軍]
- C語言程序設計習題與實驗指導(第二版) [主編 甄增榮 張賓]
- C語言程序設計(第二版) [主編 甄增榮 田云霞]
- Unity3D虛擬現實應用開發實踐 [主 編 劉龍]
- 智能化技術基礎(第三版) [鄧文達 李禮]
- Python程序設計 [主編 姜春磊 陳虹潔]
- C語言程序設計實踐教程(活頁式) [主編 鄭茵 陳巍 滕泓虬]
- 面向對象程序設計 [主編 張勇 張平華 趙小龍]
- Python程序設計基礎及實戰 [主編 劉健]
- 網絡營銷 [主編 夏薇薇 劉婷 尚潔]
- C語言程序設計 [姜雪]
- Python程序設計實踐教程 [王鶴琴 蔡正保]
- 電視節目策劃與制作(微課版) [主 編 黃滴滴]
- 數據庫技術與應用實踐教程(SQL Server 2019) [主 編 嚴暉 周肆清]