Java編程兵書

Java編程兵書

本書針對初學和自學讀者的特點,以通俗易懂的語言介紹Java語言,講解Java基礎開發。內容包括Java語言的發展、環境配置、開發工具、基本語法、流程控制語句、數組、集合、面向對象、字元串處理、圖形界面設計、輸入/輸出、處理異常、多執行緒、記憶體管理、圖像處理、JDBC連線資料庫及JSP和Servlet開發技術,讓讀者更好地體會Java語言編程開發。本書運用大量示例,讓讀者在實戰中體會編程的快樂。建議讀者邊學邊練,有難以理解的概念或知識一定要弄清楚,培養自己單獨開發項目的能力。

基本介紹

  • 書名:Java編程兵書
  • 出版社:電子工業出版社
  • 頁數:606頁
  • 開本:16
  • 品牌:電子工業出版社
  • 作者:桂穎 任昱衡
  • 出版日期:2013年9月1日
  • 語種:簡體中文
  • ISBN:7121207419
基本介紹,內容簡介,作者簡介,圖書目錄,

基本介紹

內容簡介

《Java編程兵書》運用大量示例,讓讀者在實戰中體會編程的快樂。建議讀者邊學邊練,有難以理解的概念或知識一定要弄清楚,培養自己單獨開發項目的能力。

作者簡介

桂穎,畢業於東華理工大學,從事計算機教學和軟體開發10多年,現就職於東華理工大學,負責Java及其套用領域的課程設定、教學和科研開發及其評估、學生學習結果評估,以及遠程教學的開發和套用。專長於計算機語言、計算機管理信息系統、電子商務,以及計算機套用和培訓。擅長Java平台的各種開發技術。曾在國內外雜誌發表過多篇論文,並參與了多個國家級、省級項目的開發。
任昱衡,男,漢族,雲南省昆明市人。副研究員、高級電子商務師,高級硬體工程師,中國電子商務協會電子商務研究院副院長,兼任中國社會發展研究院研究員,中國電子商務協會專家,湖北省電子商務發展聯合會籌委會副秘書長,在多所重點高校擔任客座講師,負責講授電子商務專業本科及部分研究生課程。獲得中國社科院2009年“當前經濟形勢與企業發展研討會”一等獎。擔任項目負責人,主持省部級項目一個、行業標準一個,多箇中央企業電子商務建設重點項目,在專業核心期刊發表論文20餘篇。

圖書目錄

第一篇 環境準備篇
第1章初出茅廬:走進Java
1.1Java是什麼2
1.2Java歷史背景2
1.3Java平台的3個版本2
1.4Java語言特點2
1.5Java類庫概述3
1.6Java的工作方式4
1.7Java語言的前景4
1.8小結5
1.9習題5
第2章撥雲見日:Java語言的環境配置
2.1作業系統要求7
2.2下載與安裝JDK77
2.2.1JDK7的下載7
2.2.2JDK7的安裝9
2.2.3設定環境變數10
2.2.4測試環境變數是否配置成功12
2.3第一個Java程式——HelloWorld12
2.3.1編寫HelloWorld12
2.3.2編譯運行13
2.3.3分析結構14
2.4小結14
2.5習題14
第3章見龍在田:開發工具介紹
3.1UltraEdit和EditPlus編輯器17
3.2集成開發工具介紹17
3.2.1JBuilder簡介17
3.2.2NetBeans簡介17
3.2.3Eclipse簡介17
3.2.4下載Eclipse18
3.3使用Eclipse開發第一個程式——HelloWorld19
3.4小結22
3.5習題23
第二篇 Java語法篇
第4章穩紮馬步:Java編程基礎
4.1注釋25
4.2標識符和關鍵字26
4.2.1命名標識符的規則26
4.2.2關鍵字26
4.3變數和常量27
4.3.1變數27
4.3.2常量27
4.4數據基本類型28
4.4.1整型28
4.4.2浮點型29
4.4.3字元型29
4.4.4邏輯型30
4.5數據類型之間的轉換30
4.5.1自動類型轉換31
4.5.2強制類型轉換31
4.6JAVA中的運算符32
4.6.1算術運算符32
4.6.2關係運算符34
4.6.3邏輯運算符34
4.6.4賦值運算符35
4.6.5位運算符35
4.6.6移位運算符37
4.6.7三元運算符38
4.6.8對象運算符39
4.7運算符的優先權39
4.8Java語言的編碼規範40
4.8.1語法規範40
4.8.2代碼編寫規範40
4.9本章知識點綜合套用41
4.9.1轉換基本數據類型41
4.9.2Java的運算符43
4.10小結50
4.11習題50
第5章白鶴亮翅:程式控制語句
5.1條件語句52
5.1.1if語句52
5.1.2switch語句55
5.1.3if與switch的區別56
5.2循環語句57
5.2.1for循環結構57
5.2.2while循環結構58
5.2.3do—while循環結構59
5.2.4while與do—while的區別60
5.3break和continue語句61
5.3.1break語句61
5.3.2continue語句62
5.3.3break與continue的區別63
5.4本章知識點綜合套用63
5.4.1控制程式的流程63
5.4.2計算階乘66
5.5小結67
5.6習題67
第6章知己知彼:面向對象程式設計
6.1面向對象的基本概念69
6.1.1面向過程與和面向對象的程式設計69
6.1.2對象和封裝69
6.1.3類和實例70
6.2類71
6.2.1類的定義71
6.2.2成員變數72
6.2.3成員方法74
6.2.4構造方法76
6.2.5main()方法76
6.2.6參數的傳遞77
6.2.7類對象的創建、使用和清除78
6.3包80
6.3.1包的作用80
6.3.2包的定義80
6.3.3運行包中的類81
6.3.4引入包中的類81
6.4類中變數和方法的訪問許可權82
6.4.1公有類型變數和方法83
6.4.2受保護類型變數和方法83
6.4.3私有類型變數和方法84
6.5類的繼承85
6.5.1繼承的概念86
6.5.2繼承的實現—創建子類86
6.5.3繼承數據成員和方法87
6.5.4覆蓋88
6.5.5繼承中要注意的問題90
6.6類的多態性90
6.7抽象類92
6.7.1抽象類的定義92
6.7.2抽象類實例92
6.8接口93
6.8.1接口的定義93
6.8.2接口的使用94
6.8.3接口的繼承95
6.9內部類96
6.9.1匿名類(anonymousclass)96
6.9.2靜態類(staticclass)97
6.9.3成員類(memberclass)97
6.9.4局部類(localclass)98
6.10類相關關鍵字99
6.10.1this關鍵字99
6.10.2static修飾符99
6.10.3final修飾符101
6.10.4super關鍵字103
6.11本章知識點綜合套用104
6.11.1Java的參數傳遞104
6.11.2自定義形狀類105
6.11.3方法和變數在繼承時的覆蓋與隱藏110
6.12小結114
6.13習題114
第7章穩紮穩打:數組
7.1一維數組116
7.1.1一維數組的聲明116
7.1.2一維數組的創建116
7.1.3一維數組的初始化116
7.1.4一維數組元素的使用117
7.1.5一維數組元素的默認值118
7.2二維數組119
7.2.1二維數組聲明119
7.2.2二維數組的創建119
7.2.3二維數組的初始化120
7.2.4二維數組的遍歷120
7.3數組的相關操作121
7.3.1數組長度121
7.3.2數組填充121
7.3.3數組複製122
7.3.4數組比較123
7.4數組排序123
7.4.1sort函式排序123
7.4.2冒泡排序124
7.5本章知識點綜合套用125
7.5.1使用Arrays125
7.5.2求質數127
7.5.3動態調整數組長度129
7.6小結130
7.7習題131
第8章借花獻佛:集合
8.1Java集合框架133
8.2Collection接口133
8.2.1轉換構造方法133
8.2.2Collection接口的定義133
8.2.3Collection接口的基本操作134
8.2.4遍歷Collection接口134
8.2.5Collection接口的批量操作135
8.2.6Collection接口的數組操作136
8.3Set接口136
8.3.1Set接口的定義136
8.3.2Set接口的基本操作137
8.3.3Set接口的批量操作138
8.3.4Set接口的數組操作139
8.4List接口139
8.4.1List接口的定義140
8.4.2從Collection繼承的操作140
8.4.3按位置訪問和查找操作141
8.4.4List疊代方法142
8.5Map接口143
8.5.1Map接口的定義143
8.5.2Map接口的基本操作144
8.5.3Map接口的批量操作145
8.6實現145
8.6.1實現的類型146
8.6.2Set接口的實現147
8.6.3List接口的實現148
8.6.4Map接口的實現148
8.7本章知識點綜合套用149
8.7.1ArrayList、Vector和LinkedList149
8.7.2對List排序154
8.7.3對Map排序156
8.8小結158
8.9習題158
第9章點石成金:字元串處理
9.1字元類160
9.1.1Character字元包裝器類160
9.1.2轉義字元序列161
9.1.3常用構造函式161
9.1.4字元的比較162
9.1.5取字元對象的值162
9.2字元串String163
9.2.1字元串聲明與賦值163
9.2.2常用構造函式163
9.2.3獲取字元串長度165
9.3字元串常用操作166
9.3.1字元串連線166
9.3.2字元串比較167
9.3.3字元串截取168
9.3.4字元串查找169
9.3.5字元串大小寫轉換170
9.3.6字元串內容的替換171
9.3.7獲取字元串某位置的字元172
9.4字元串其他操作172
9.5字元串數組173
9.5.1字元串數組的構造函式174
9.5.2字元串數組的屬性及常用方法174
9.6字元串快取類StringBuffer175
9.6.1常用構造函式175
9.6.2字元串快取與字元串的轉化176
9.6.3字元串快取擴充177
9.6.4字元串快取插入177
9.7字元串快取的其他操作178
9.8字元串標記類179
9.8.1常用構造函式179
9.8.2常用方法179
9.9本章知識點綜合套用180
9.9.1使用String180
9.9.2基本數據類型與字元串的轉化184
9.9.3使用StringBuffer186
9.10小結190
9.11習題190

第三篇 Java編程提高篇
第10章雲行雨施:JavaSwing編程
10.1Swing的特點192
10.2Swing容器192
10.2.1JFrame容器192
10.2.2JPanel容器195
10.3創建圖形界面程式196
10.4Swing常用組件197
10.4.1按鈕組件JButton197
10.4.2複選框組件JCheckBox198
10.4.3單選按鈕組件JRadioButton198
10.4.4文本框組件JTextField198
10.4.5密碼框組件JPasswordField199
10.4.6組合框組件JComboBox199
10.4.7滑塊組件JSlider199
10.4.8微調組制組件JSpinner199
10.4.9選單組件JMenu200
10.5不可編輯的信息顯示組件200
10.5.1標籤組件JLabel200
10.5.2進度條組件JProgressBar201
10.5.3工具提示組件JToolTip201
10.6Swing高級組件202
10.6.1顏色選擇器JColorChooser202
10.6.2檔案選擇器JFileChooser202
10.6.3文本編輯組件JEditorPane和JTextPane203
10.6.4文本區組件JTextArea204
10.6.5表組件JTable204
10.6.6樹組件JTree205
10.6.7面板組件JPanel206
10.6.8滾動面板JScrollPane207
10.6.9拆分面板JSplitPane207
10.6.10選項卡面板JTabbedPane208
10.6.11工具列JToolBar208
10.7本章知識點綜合套用209
10.7.1一個圓形的按鈕209
10.7.2捕捉螢幕211
10.7.3縮放圖片214
10.8小結219
10.9習題219
第11章十拿九穩:標準布局
11.1標準布局管理器簡介222
11.1.1BorderLayout框線布局222
11.1.2BoxLayout盒狀布局223
11.1.3CardLayout卡片布局224
11.1.4FlowLayout流動布局225
11.1.5GridLayout格線布局226
11.1.6GridBagLayout格線包布局227
11.2使用布局管理器技巧228
11.2.1設定布局管理器228
11.2.2向容器中添加組件229
11.2.3提供組件大小和排列策略229
11.2.4設定組件之間的間隙229
11.2.5設定容器的語言方向230
11.3本章知識點套用231
11.3.1設計用戶登錄界面231
11.3.2日曆235
11.4小結241
11.5習題242
第12章料事如神:Java異常處理
12.1Java中的異常244
12.2異常處理245
12.2.1try語句246
12.2.2catch語句247
12.2.3異常類型247
12.2.4異常處理原則248
12.3Throwable類249
12.3.1Throwable類的定義和方法249
12.3.2異常類的繼承關係250
12.3.3使用throws拋出異常251
12.3.4使用throw拋出異常252
12.3.5運行期異常252
12.4自定義異常253
12.4.1創建自定義異常類253
12.4.2處理自定義異常254
12.5finally子句255
12.6異常的幾個問題256
12.6.1異常丟失256
12.6.2構造函式中的異常處理257
12.6.3異常匹配258
12.7異常的優點260
12.8本章知識點綜合套用262
12.8.1throw、throws、try和catch262
12.8.2自定義異常類264
12.8.3使用finally266
12.9小結269
12.10習題270
第13章棒打雙狗:Java的輸入/輸出處理
13.1什麼是流272
13.2位元組流272
13.2.1輸入流類InputStream272
13.2.2輸出流類OutputStream274
13.3字元流275
13.3.1Writer類275
13.3.2Reader類277
13.3.3讀取Unicode字元278
13.3.4讀取字元檔案279
13.4File類281
13.4.1創建資料夾281
13.4.2創建檔案282
13.4.3複製檔案283
13.4.4刪除檔案284
13.4.5刪除資料夾284
13.5流的運用286
13.5.1檔案流286
13.5.2管道流287
13.5.3I/O重定向287
13.5.4過濾流288
13.5.5序列化對象289
13.6本章知識點綜合套用290
13.6.1獲取檔案的屬性信息290
13.6.2創建檔案和目錄292
13.6.3刪除檔案和目錄296
13.7小結299
13.8習題299
第14章以柔克剛:多執行緒編程
14.1執行緒301
14.1.1執行緒的組成301
14.1.2多執行緒概念301
14.1.3Java中的多執行緒302
14.2創建執行緒302
14.2.1繼承Thread類創建執行緒302
14.2.2實現Runnable接口創建執行緒303
14.3執行緒的狀態305
14.4執行緒的優先權306
14.5執行緒的同步307
14.5.1同步方法307
14.5.2固定鎖和同步308
14.6執行緒的控制310
14.6.1啟動執行緒310
14.6.2掛起和恢複線程310
14.6.3執行緒的休眠方法310
14.6.4執行緒的加入方法312
14.6.5中斷執行緒314
14.6.6結束執行緒314
14.7執行緒間通信315
14.7.1PipedWriter類詳解315
14.7.2PipedReader類詳解316
14.7.3管道通信實例317
14.8多執行緒的死鎖問題318
14.9多執行緒的缺點319
14.10本章知識點綜合套用319
14.10.1定義和啟動執行緒319
14.10.2執行緒的協作321
14.10.3執行緒優先權324
14.11小結325
14.12習題325
第15章李代桃僵:網路編程
15.1網路編程基礎327
15.1.1什麼是TCP協定327
15.1.2什麼是IP協定327
15.1.3什麼是TCP/IP327
15.1.4什麼是UDP協定328
15.1.5什麼是連線埠328
15.1.6什麼是套接字328
15.1.7java.net包328
15.2InetAddress類329
15.3URL網路編程330
15.3.1URL330
15.3.2符語法331
15.3.3URLConnection類332
15.4TCP的網路編程332
15.4.1Socket332
15.4.2重要的SocketAPI333
15.4.3伺服器端程式設計334
15.4.4客戶端程式設計336
15.5UDP網路編程336
15.5.1UDP通信概念337
15.5.2UDP的特性337
15.5.3UDP的套用338
15.5.4UDP與TCP的區別338
15.6本章知識點綜合套用339
15.6.1獲取URL的信息339
15.6.2HTTP客戶端341
15.6.3基本的Socket編程343
15.7小結348
15.8習題349
第16章一箭雙鵰:記憶體管理技術
16.1程式中“垃圾”是什麼351
16.2“垃圾”收集器354
16.3如何收集“垃圾”356
16.3.1finalize重寫357
16.3.2finalize安全問題358
16.4非執行緒“垃圾”361
16.5執行緒“垃圾”362
16.6本章知識點綜合套用365
16.6.1弱引用實例365
16.6.2軟引用實例367
16.6.3最終守護者實例369
16.7小結371
16.8習題371
第17章成人之美:處理圖像
17.1載入與繪製373
17.2圖示376
17.2.1Icon接口376
17.2.2ImageIcon類379
17.3處理圖像編碼380
17.3.1JPEG編碼器381
17.3.2GifEncoder編碼器382
17.4圖像抓取384
17.4.1createScreenCapture方法384
17.4.2抓屏功能使用實例384
17.5圖像濾鏡的開發388
17.6RGB色彩通道過濾390
17.7卷積濾鏡391
17.8本章知識點綜合套用393
17.9小結402
17.10習題402


第18章裡應外合:反射與註解的套用
18.1反射概念404
18.2Class類的使用實例404
18.3數組與Class類408
18.4精確判斷對象類型409
18.4.1Field類的知識與使用410
18.4.2Method類的知識與使用412
18.4.3Constructor類的知識與使用414
18.5反射與修飾符416
18.6取消訪問限制420
18.7利用反射動態創建數組對象422
18.8本章知識點綜合套用423
18.8.1instanceof操作符423
18.8.2獲取類的信息424
18.9小結431
18.10習題431
第19章如虎添翼:使用JDBC連線資料庫
19.1資料庫433
19.1.1資料庫簡介433
19.1.2SQL語句433
19.2JDBC簡介435
19.2.1什麼是JDBC435
19.2.2JDBC與Java結合435
19.2.3JDBC如何實現資料庫的平台無關性435
19.3JDBC中的常用類和接口436
19.3.1驅動程式管理類(DriverManager)436
19.3.2聲明類(Statement)436
19.3.3資料庫連線類(Connection)437
19.3.4結果集合類(ResultSet)437
19.4如何實現資料庫的連線438
19.4.1載入合適的資料庫驅動程式438
19.4.2資料庫配置問題438
19.4.3建立資料庫連線並獲得Statement對象440
19.4.4執行資料庫查詢語句440
19.4.5獲得查詢結果441
19.4.6關閉資料庫連線441
19.4.7完整的示例程式441
19.5元數據442
19.5.1資料庫的DatabaseMetaData元數據443
19.5.2結果集的ResultSetMetaData元數據443
19.6批處理444
19.6.1批處理規範444
19.6.2批處理舉例444
19.7本章知識點綜合套用445
19.7.1訪問資料庫445
19.7.2對資料庫進行查詢446
19.7.3增加、修改、刪除資料庫中的數據447
19.8小結448
19.9習題448
第20章同甘共苦:使用Swing組件創建資料庫應用程式
20.1JComboBox組件創建資料庫應用程式450
20.1.1創建JComboBox450
20.1.2DefaultComboBoxModel創建JComboBox452
20.2JList組件創建資料庫應用程式453
20.2.1DefaultListModel創建JList453
20.2.2ListModel創建JList454
20.3JTable組件創建資料庫應用程式456
20.3.1JTable相關的類456
20.3.2DefaultTableModel創建JTable457
20.4本章知識點綜合套用458
20.4.1使用ResultSet更新資料庫458
20.4.2使用RowSet462
20.5小結472
20.6習題473
第21章明修棧道:JSP技術
21.1JSP簡介475
21.1.1MVC模式475
21.1.2JSP技術的優點476
21.2基本語法476
21.2.1注釋476
21.2.2JSP指令477
21.3JSP腳本元素480
21.3.1JSP聲明480
21.3.2JSP表達式481
21.4JSP動作481
21.4.1include動作元素482
21.4.2forword動作元素482
21.4.3plugin動作元素483
21.4.4param動作元素483
21.4.5useBean、setProperty和getProperty動作元素484
21.5JSP內置對象486
21.5.1request對象486
21.5.2response對象488
21.5.3session對象488
21.5.4application對象489
21.5.5out對象491
21.5.6config對象491
21.5.7exception對象492
21.5.8pageContext對象492
21.6本章知識點綜合套用493
21.6.1獲取客戶端的真實IP位址493
21.6.2設定和讀取Cookie495
21.6.3JSP無刷新聊天室499
21.7小結505
21.8習題505
第22章暗度陳倉:Servlet技術
22.1Servlet簡介507
22.1.1什麼是Servlet507
22.1.2Servlet的生命周期507
22.1.3Servlet的基本結構508
22.2HTTPServlet套用編程接口508
22.2.1init()方法509
22.2.2service()方法509
22.2.3doGet()方法509
22.2.4doPost()方法509
22.2.5destroy()方法509
22.2.6GetServletConfig()方法510
22.2.7GetServletInfo()方法510
22.3創建HttpServlet510
22.4調用HttpServlet512
22.4.1由URL調用Servlet512
22.4.2在標記中指定Servlet512
22.4.3在標記中指定Servlet513
22.4.4在ASP檔案中調用Servlet513
22.5Servlet之間的跳轉514
22.5.1轉向Forward514
22.5.2重定向Redirect515
22.6本章知識點綜合套用515
22.6.1用Servlet生成圖形驗證碼515
22.6.2用Servlet實現分頁查看資料庫520
22.7小結534
22.8習題534
第四篇 開發實戰篇
第23章小試牛刀:界面遊戲拼圖
23.1遊戲簡介536
23.2素材準備537
23.3遊戲設計537
23.3.1載入和拆分圖片537
23.3.2實現圖片的隨機排列538
23.3.3實現圖片的移動538
23.3.4參考圖像的縮放539
23.4開發步驟539
23.4.1自定義按鈕類設計:ImageButton類540
23.4.2遊戲界面布局:構造窗體類PuzzleGame540
23.4.3載入和拆分圖像541
23.4.4創建拼接圖面板542
23.4.5創建顯示參考圖像的面板543
23.4.6創建選單欄545
23.4.7實現按鈕事件監聽器類547
23.4.8設定窗體在螢幕中出現的位置547
23.4.9編寫main()方法548
23.4.10運行測試548
23.5打包部署548
23.6小結549
第24章鶴嘯九天:學生信息管理系統
24.1需求分析551
24.2系統設計551
24.3登錄模組551
24.3.1設計構想551
24.3.2實現登錄模組552
24.4學生信息模組相關流程554
24.4.1設計構想554
24.4.2實現學生信息主界面554
24.4.3增加學生信息557
24.4.4刪除學生信息560
24.4.5修改學生信息563
24.4.6基本學生信息查詢567
24.4.7成績查詢571
24.4.8退出系統575
24.5教師信息模組相關流程576
24.5.1主界面576
24.5.2增加老師信息579
24.5.3刪除老師信息583
24.5.4修改老師信息586
24.5.5錄入成績590
24.5.6刪除成績593
24.5.7修改成績596
24.5.8基本信息查詢600
24.5.9退出系統604
24.6小結606
  

相關詞條

熱門詞條

聯絡我們