第1章Java語言概述1
1.1Java語言誕生背景2
1.2Java簡介2
1.3Java語言的特點2
1.4Java的運行機制3
1.5JDK安裝4
1.5.1下載JDK4
1.5.2安裝JDK5
1.5.3Windows繫統下配置和測試JDK7
1.6Java SE 8的新特性9
1.7Java程序開發過程9
1.8Java開發工具Eclipse10
1.8.1Eclipse簡介10
1.8.2Eclipse的安裝與啟動10
1.8.3Eclipse編寫Java程序的流程12
1.9編程風格15
1.10Java API簡介16
1.10.1下載Java API16
1.10.2在線查看API17
小結18
習題18
第2章Java語言的基本語法19
2.1關鍵字和標識符20
2.1.1Unicode字符集20
2.1.2關鍵字20
2.1.3標識符20
2.2常量與變量21
2.2.1常量的概念及使用要點21
2.2.2變量的概念及使用要點22
2.3數據類型22
2.3.1基本數據類型23
2.3.2引用數據類型27
2.3.3基本類型與引用類型的區別29
2.3.4數據類型之間的相互轉換31
2.4數組33
2.4.1聲明數組33
2.4.2創建數組34
2.4.3初始化數組34
2.4.4數組長度34
2.4.5使素35
小結35
習題36
第3章運算符與流程控制37
3.1運算符38
3.1.1賦值運算符38
3.1.2算術運算符38
3.1.3關繫運算符39
3.1.4邏輯運算符40
3.1.5位運算符42
3.1.6對像運算符44
3.1.7其他運算符44
3.1.8運算符的優先級別及結合性45
3.2if語句46
3.2.1簡單的if條件語句46
3.2.2“if...else”條件語句47
3.2.3“if...else if”多分支語句49
3.2.4if語句的嵌套50
3.3switch多分支語句51
3.4if語句和switch語句的區別53
3.5循環語句53
3.5.1while循環語句53
3.5.2“do...while”循環語句54
3.5.3for循環語句55
3.5.4for-each風格的for循環57
3.5.5循環的嵌套57
3.6跳轉語句60
3.6.1break跳轉語句60
3.6.2continue跳轉語句60
3.6.3return跳轉語句61
小結62
習題62
第4章面向對像基礎63
4.1面向對像程序設計64
4.1.1面向對像程序設計概述64
4.1.2面向對像程序設計的特點64
4.2類65
4.2.1定義類65
4.2.2成員變量和局部變量67
4.2.3成員方法68
4.2.4注意事項70
4.2.5類的UML圖70
4.3構造方法與對像71
4.3.1構造方法的概念及用途71
4.3.2對像概述73
4.4類與程序的結構關繫75
4.5參數傳值75
4.5.1傳 值 機 制75
4.5.2基本數據類型的參數傳值76
4.5.3引用類型參數的傳值76
4.6對像的組合77
4.6.1組合與復用77
4.6.2類的關聯關繫和依賴關繫的UML圖78
4.7實例方法與類方法79
4.7.1實例方法與類方法的定義79
4.7.2實例方法和類方法的區別79
4.8this關鍵字79
4.9包81
4.9.1包的概念81
4.9.2創建包82
4.9.3使用包中的類82
4.10import語句83
4.10.1類的兩種訪問方法83
4.10.2引入類庫中的類83
4.11訪問權限84
小結86
習題86
第5章繼承與多態88
5.1繼承簡介89
5.1.1繼承的概念89
5.1.2子類的設計89
5.1.3繼承的使用原則90
5.1.4使用super關鍵字91
5.2子類的繼承92
5.3多態94
5.3.1方法的重載94
5.3.2避免重載出現的歧義95
5.3.3方法的覆蓋95
5.3.4向上轉型97
5.4抽像類98
5.4.1抽像類和抽像方法98
5.4.2抽像類和抽像方法的規則99
5.4.3抽像類的作用100
5.5final修飾符100
5.5.1final變量100
5.5.2final類101
5.5.3final方法101
5.6內 部 類101
5.6.1成員內部類102
5.6.2局部內部類103
5.6.3靜態內部類104
5.6.4匿名內部類105
小結106
習題106
第6章接口107
6.1接口簡介108
6.2定義接口108
6.3接口的繼承108
6.4接口的實現109
6.5接口與抽像類112
6.6接口的UML圖112
6.7接口回調113
6.8接口與多態114
6.9接口參 數115
6.10面向接口編程115
小結116
習題116
第7章異常處理117
7.1異常118
7.2異常處理119
7.2.1使用“try...catch”語句119
7.2.2finally子句的用法121
7.2.3使用throws關鍵字拋出異常122
7.2.4使用throw關鍵字122
7.2.5使用異常處理語句的注意事項123
7.3異常類125
7.3.1Error類125
7.3.2Exception類126
7.4自定義異常127
7.5異常的使用原則129
小結129
習題129
第8章常用的實用類130
8.1String類131
8.1.1創建字符串對像131
8.1.2連接字符串131
8.1.3字符串操作133
8.1.4格式化字符串138
8.1.5對像的字符串表示139
8.2日期的格式化140
8.2.1Date類140
8.2.2格式化日期和時間140
8.3Scanner類142
8.4Math和Random類143
8.5數字格式化144
8.5.1Formatter類144
8.5.2格式化整數144
8.5.3格式化浮點數145
8.6StringBuffer類146
8.6.1StringBuffer對像的創建146
8.6.2StringBuffer類的常用方法147
8.7包裝類148
8.7.1Integer148
8.7.2Boolean151
8.7.3Byte152
8.7.4Character153
8.7.5Double154
8.7.6Number155
小結155
習題156
第9章集合157
9.1集合中主要接口的概述158
9.2Collection接口158
9.2.1addAll()方法159
9.2.2removeAll()方法160
9.2.3retainAll()方法161
9.2.4containsAll()方法162
9.2.5toArray()方法162
9.3List集合163
9.3.1List的用法163
9.3.2使用ArrayList類165
9.3.3使用LinkedList類167
9.4Set集合169
9.4.1使用HashSet類169
9.4.2使用TreeSet類171
9.5Map集合177
9.5.1Map的用法177
9.5.2使用HashMap類178
9.5.3使用TreeMap類181
小結182
習題182
第10章Java輸入與輸出183
10.1File類184
10.2流185
10.2.1流的基本概念185
10.2.2輸入輸出流185
10.3字節流187
10.3.1InputStream類與OutputStream類187
10.3.2FileInputStream類與FileOutputStream類188
10.4字符流190
10.4.1Reader類與Writer類190
10.4.2InputStreamReader類與OutputStreamWriter類191
10.4.3FileReader類與FileWriter類194
10.4.4BufferedReader類與BufferedWriter類195
10.4.5PrintStream類與PrintWriter類197
10.4.6System.in獲取用戶輸入199
10.5RandomAccessFile類200
10.6過濾器流202
10.7對像序列化(ObjectSerialization)202
10.7.1ObjectInput與ObjectOutput203
10.7.2ObjectInputStream與ObjectOutputStream203
小結205
習題205
第11章Swing程序設計206
11.1Swing概述207
11.2創建窗體207
11.3常用布局管理器208
11.3.1不使用布局管理器209
11.3.2FlowLayout布局管理器210
11.3.3BorderLayout布局管理器211
11.3.4GridLayout布局管理器212
11.4常用面板213
11.4.1JPanel面板213
11.4.2JScrollPane面板215
11.5常用組件217
11.5.1JLabel(標簽)組件217
11.5.2JButton(按鈕)組件218
11.5.3JRadioButton(單選按鈕)組件219
11.5.4JCheckBox(復選框)組件220
11.5.5JComboBox(選擇框)組件222
11.5.6JList(列表框)組件223
11.5.7JTextField(文本框)組件225
11.5.8JPasswordField(密碼框)組件227
11.5.9JTextArea(文本域)組件229
11.6常用事件處理230
11.6.1動作事件處理230
11.6.2焦點事件處理233
11.6.3鼠標事件處理
11.6.4鍵盤事件處理236
11.7拼圖遊戲238
11.7.1遊戲簡介238
11.7.2設計思路238
11.7.3開發步驟240
小結243
習題244
第12章Swing高級應用245
12.1表格246
12.1.1 創建表格246
12.1.2定義表格247
12.1.3操作表格251
12.1.4利用表格模型創建表格253
12.1.5維護表格模型255
12.2樹258
12.2.1簡單的樹258
12.2.2處理選中節點事件260
12.2.3遍歷樹節點262
12.2.4處理展開節點事件264
12.3組件面板265
12.3.1分割面板265
12.3.2選項卡面板268
12.4菜單271
12.4.1創建菜單欄271
12.4.2創建彈出式菜單273
12.4.3定制個性化菜單273
12.5工具欄277
12.6進度條278
小結280
習題280
第13章多線程281
13.1線程概述282
13.2線程的創建283
13.2.1線程的創建方式283
13.2.2繼承Thread類284
13.2.3實現Runnable接口284
13.3線程的生命周期285
13.4線程的優先級286
13.5線程的控制287
13.5.1線程的啟動287
13.5.2線程的掛起287
13.5.3線程狀態檢查289
13.5.4結束線程289
13.5.5後臺線程291
13.6線程的同步291
13.7線程通信295
13.8多線程產生死鎖299
小結299
習題300
第14章網絡程序設計301
14.1基礎知識301
14.1.1TCP302
14.1.2UDP 302
14.2IP地址封裝302
14.3套接字304
14.3.1服務器端套接字304
14.3.2客戶端套接字306
14.4數據報310
14.4.1DatagramPacket310
14.4.2DatagramSocket311
14.5網絡聊天程序開發313
小結317
習題318
第15章JDBC數據庫編程319
15.1JDBC概述320
15.1.1JDBC-ODBC橋技術介紹320
15.1.2JDBC技術介紹320
15.1.3JDBC驅動類型321
15.2JDBC中的常用類和接口322
15.2.1Driver接口322
15.2.2DriverManager類322
15.2.3Connection接口322
15.2.4Statement接口323
15.2.5PreparedStatement接口324
15.2.6CallableStatement接口325
15.2.7ResultSet接口326
15.3連接數據庫328
15.3.1加載JDBC驅動程序328
15.3.2創建數據庫連接329
15.3.3執行SQL語句330
15.3.4獲得查詢結果331
15.3.5關閉連接331
15.4操作數據庫332
15.4.1添加數據332
15.4.2查詢數據336
15.4.3修改數據338
15.4.4刪除數據341
15.5應用JDBC事務343
小結347
習題347
第16章綜合案例——騰宇超市管理繫統348
16.1項目設計思路349
16.1.1功能闡述349
16.1.2繫統預覽349
16.1.3功能結構349
16.1.4文件組織結構350
16.2數據庫設計350
16.2.1數據庫設計350
16.2.2數據表設計350
16.3公共類設計352
16.3.1連接數據庫352
16.3.2獲取當前繫統時間類353
16.4登錄模塊設計353
16.4.1登錄模塊概述353
16.4.2實現帶背景的窗體353
16.4.3登錄模塊實現過程354
16.5主窗體設計357
16.5.1主窗體概述357
16.5.2平移面板控件357
16.5.3主窗體實現過程360
16.6采購訂貨模塊設計362
16.6.1采購訂貨模塊概述362
16.6.2在表格中添加按鈕362
16.6.3添加采購訂貨信息實現過程363
16.6.4搜索采購訂貨信息實現過程365
16.6.5修改采購訂貨信息實現過程367
16.6.6刪除采購訂貨信息實現過程370
16.7人員管理模塊設計371
16.7.1人員管理模塊概述371
16.7.2使用觸發器級聯刪除數據371
16.7.3顯示查詢條件實現過程372
16.7.4顯示員工基本信息實現過程374
16.7.5添加員工信息實現過程376
16.7.6刪除員工信息實現過程379
16.8在Eclipse中實現程序打包380
小結382
附錄A上機實驗383
實驗1Java基礎384
實驗目的384
實驗內容384
實驗2程序流程控制385
實驗目的385
實驗內容386
實驗3類的繼承387
實驗目的387
實驗內容387
實驗4使用集合類388
實驗目的388
實驗內容388
實驗5數據流389
實驗目的389
實驗內容389
實驗6線程控制390
實驗目的390
實驗內容390
實驗7異常處理391
實驗目的391
實驗內容391
實驗8Swing程序設計392
實驗目的392
實驗內容392
實驗9網絡程序設計394
實驗目的394
實驗內容394
實驗10通過JDBC方式操作數據庫394
實驗目的394
實驗內容395
實驗11計算器397
實驗目的397
實驗內容397
實驗12日志簿401
實驗目的401
實驗內容401