《java從入門到精通(視頻實戰版)》是2011年機械工業出版社出版的圖書,作者是陳浩。
基本介紹
- 書名:java從入門到精通(視頻實戰版)
- 作者:陳浩
- ISBN:9787111325109
- 頁數:506
- 出版社:機械工業出版社
- 出版時間:出版日期:
- 開本:16開
- 叢書名 :程式設計師書庫
內容簡介,目錄,
內容簡介
java語言是一種跨平台的高級語言,無論是網路世界還是桌面應用程式,無論是分散式套用環境還是嵌入式套用都可以看到java的身影。本書一共分為五篇,循序漸進地講述了java語言的各項技術,第一篇java技術基礎使讀者對java語言有個初步的了解,為後面的深入學習奠定基礎。第二篇面向對象的技術是需要讀者認真學習和體會的。第三篇提高篇詳細講述了java語言的高級主題,是讀者進階學習的必備內容。第四篇是分散式計算的內容,如果讀者對web編程感興趣,相信本篇可以滿足您的要求。為了說明java語言的套用,在最後一篇介紹了一個實例,通過該程式從無到有的過程使讀者知道如何使用java語言編寫應用程式。
本書的特點是詳細介紹了java語言的各個方面,突出了適應初學者學習的特點,概念明了,講解細緻,步驟清晰,實例簡短。其中的大量實例選用了簡單但不乏深度的程式,不但有原始碼的詳細標註,還有運行結果和運行結果分析,幫助初學者在初步了解理論知識的基礎上,通過具體的套用實例輕鬆掌握所學內容。本書適合正在學習java語言或打算學習java語言的人員。如果你是初學者,相信本書從第1章開始會把你輕鬆引入java的世界。如果你已經學習java語言,相信本書的部分內容如對象初始化和清理、異常處理等章節會給你諸多啟示。
目錄
從書序
前言
第一篇 java技術入門
第1章 java語言概述 1
1.1 java的語言特點 1
1.1.1 java語言與c/c++的區別 1
1.1.2 java面向對象的特性和多態性 2
1.1.3 java的平台無關性 4
1.1.4 java分散式套用和多執行緒的特點 4
1.1.5 java程式的可靠性、安全性 5
1.1.6 java小程式和應用程式 5
1.2 java的不同版本 6
1.3 如何才能學好java 6
1.4 什麼是面向對象的程式設計 7
1.4.1 什麼是面向對象 7
1.4.2 模型分析:造房子 7
1.4.3 設計面向對象程式的思路 8
1.4.4 設計面向對象程式的技巧 8
1.4.5 面向對象與面向過程設計的不同 8
1.5 常見面試題分析 10
.1.5.1 初學者如何選擇java參考書 10
1.5.2 java套用在哪些方面 10
1.6 本章習題 11
第2章 最簡單的java程式 12
2.1 java程式的開發流程 12
2.2 開發工具的選擇 12
2.2.1 開發工具的種類 13
2.2.2 開發工具的安裝 14
2.2.3 開發工具的使用介紹 15
2.3 java編程環境 17
2.3.1 j2se的下載和安裝 17
2.3.2 如何設定classpath變數 18
2.3.3 如何設定path變數 18
2.3.4 如何測試環境變數 19
2.4 編寫最簡單的程式 19
2.4.1 編寫程式代碼 19
2.4.2 分析程式代碼 20
2.5 常見面試題分析 20
2.5.1 javac xxx.java順利通過,但java xxx顯示 “noclassdeffounderror?” 20
2.5.2 導致錯誤“exception in thread main java.lang.nosuchmethoderror:main”的原因 20
2.6 本章習題 20
第3章 java語言基礎 22
3.1 java命名規則 22
3.2 數據類型 22
3.2.1 基本數據類型 23
3.2.2 引用數據類型 25
3.3 數據類型轉換 26
3.3.1 隱式數據類型轉換 26
3.3.2 顯式數據類型轉換 26
3.4 變數與常量 27
3.4.1 變數 27
3.4.2 常量 27
3.5 java運算符 28
3.5.1 數學運算符 28
3.5.2 關係運算符 29
3.5.3 邏輯運算符 30
3.5.4 位運算符 31
3.5.5 位移運算符 31
3.5.6 “? :” 運算符 32
3.5.7 運算符的優先順序 32
3.6 常見面試題分析 32
3.6.1 簡述變數及其作用範圍 32
3.6.2 java的變數分哪兩種大的數據類型 33
3.6.3 java中equal()和“==”的區別是什麼 33
3.6.4 java中的三元運算符是什麼 33
3.7 本章習題 33
第4章 程式流程控制 34
4.1 流程控制概述 34
4.2 條件語句 34
4.3 分支語句 35
4.3.1 簡單的if-else語句 35
4.3.2 if-else多分支語句 36
4.3.3 if嵌套語句 36
4.3.4 switch語句 37
4.3.5 分支語句中的return 38
4.4 循環語句 38
4.4.1 while循環語句 39
4.4.2 do-while循環語句 39
4.4.3 for循環語句 40
4.5 跳轉語句 41
4.5.1 break跳轉語句 41
4.5.2 continue跳轉語句 41
4.6 常見面試題分析 42
4.6.1 java提供了哪幾種循環結構,它們各自的特點是什麼 42
4.6.2 break和continue關鍵字的掌握 42
4.6.3 for語句的循環條件 43
4.7 本章習題 44
第5章 數組 45
5.1 一維數組 45
5.1.1 定義一維數組 45
5.1.2 初始化一維數組 45
5.1.3 使用一維數組 46
5.2 二維數組 47
5.2.1 定義二維數組 47
5.2.2 初始化二維數組 48
5.2.3 使用二維數組 48
5.3 多維數組 50
5.3.1 定義多維數組 50
5.3.2 初始化多維數組 50
5.3.3 使用多維數組 51
5.4 數組操作 52
5.4.1 數組的複製 52
5.4.2 數組的填充 52
5.4.3 數組的比較 53
5.4.4 數組的排序 54
5.4.5 數組的查找 55
5.5 常見面試題分析 57
5.5.1 如何理解數組在java中作為一個類 57
5.5.2 new object[5]語句是否創建了5個對象 57
5.5.3 二維數組的長度是否固定 57
5.6 本章習題 57
第6章 字元串操作 58
6.1 字元串 58
6.1.1 字元串分類 58
6.1.2 聲明字元串 58
6.1.3 創建字元串 59
6.2 字元串操作 60
6.2.1 字元串連線 60
6.2.2 比較字元串 60
6.2.3 獲取字元串長度 60
6.2.4 複製字元串 60
6.2.5 獲得子串 61
6.2.6 獲取指定位置的字元 61
6.2.7 更改大小寫 62
6.2.8 分割字元串 62
6.2.9 更改字元串中的部分字元 62
6.3 格式化字元串 63
6.3.1 一般類型格式化 63
6.3.2 日期和時間類型格式 63
6.4 常見面試題分析 64
6.4.1 字元串字面量是否自動生成一個string對象 64
6.4.2 stringbuffer和stringbuilder存在的作用是什麼 64
6.4.3 如何使用指定的字元集生成string對象 64
6.5 本章習題 64
第7章 容器類簡介 65
7.1 容器簡介 65
7.1.1 容器框架 65
7.1.2 java容器框架的優勢與劣勢 67
7.2 容器接口的分類 68
7.2.1 collection接口定義與套用 68
7.2.2 map接口定義與套用 70
7.3 集合容器set 72
7.3.1 set接口定義與套用 72
7.3.2 set實現 75
7.4 列表容器list 78
7.4.1 list接口定義與套用 79
7.4.2 list實現 81
7.4.3 使用list實現堆疊和佇列 81
7.5 map容器 84
7.5.1 map實現 84
7.5.2 正確認識hashcode()方法 87
7.6 疊代器 89
7.6.1 疊代器接口 89
7.6.2 疊代器的使用 90
7.7 常見面試題分析 92
7.7.1 什麼是集合 92
7.7.2 疊代器是什麼 92
7.7.3 hashmap和hashtable的區別 92
7.8 本章習題 93
第二篇 面向對象技術
第8章 面向對象技術導論 95
8.1 對象簡介 95
8.1.1 程式設計中的抽象化認識 95
8.1.2 如何獲得和操控對象 96
8.1.3 對象的存儲空間 96
8.1.4 對象的生存空間 98
8.2 一種新的數據類型:類(class) 98
8.2.1 類(class)概述 98
8.2.2 類的屬性詳解 99
8.2.3 類的方法詳解 100
8.2.4 一種特殊的方法—類的構造函式 102
8.2.5 關鍵字static 103
8.2.6 關鍵字this 104
8.3 訪問許可權 106
8.3.1 包 106
8.3.2 設定java訪問許可權 107
8.4 繼承 110
8.4.1 什麼是繼承 110
8.4.2 如何實現繼承 110
8.4.3 super關鍵字 112
8.5 多態 113
8.5.1 什麼是多態 113
8.5.2 方法的重載 115
8.5.3 抽象類和抽象函式 117
8.6 接口 119
8.6.1 接口定義 119
8.6.2 接口和抽象類 120
8.6.3 接口的使用 120
8.7 常見面試題分析 122
8.7.1 父類構造函式是先於子類構造函式運行嗎 122
8.7.2 哪一個構造函式能添加到標記處而不會發生編譯錯誤 123
8.7.3 請說出面向對象的特徵有哪些 124
8.8 本章習題 124
第9章 對象的初始化和清理 125
9.1 構造函式 125
9.1.1 默認構造函式 126
9.1.2 自定義構造函式 126
9.2 函式的重載 127
9.3 數據成員初始化 128
9.4 static成員初始化 130
9.5 對象的清理 134
9.6 常見面試題分析 134
9.6.1 如何理解java的垃圾回收機制 134
9.6.2 java中類構造函式的執行順序 134
9.7 本章習題 135
第三篇 java編程
第10章 多執行緒編程 137
10.1 執行緒概述 137
10.2 創建執行緒 138
10.2.1 繼承thread類創建執行緒 138
10.2.2 實現runnable接口創建執行緒 139
10.3 執行緒的狀態 140
10.4 執行緒的優先權 142
10.5 執行緒的同步 143
10.5.1 java程式的資源共享 143
10.5.2 synchronized關鍵字 145
10.5.3 同步控制方法 146
10.5.4 同步控制塊 148
10.6 執行緒的控制 149
10.6.1 啟動執行緒 149
10.6.2 掛起和恢複線程 150
10.6.3 執行緒的休眠 150
10.6.4 等待和通知 151
10.6.5 結束執行緒 153
10.7 執行緒間通信 154
10.7.1 pipedwriter類詳解 154
10.7.2 pipedreader類詳解 155
10.7.3 管道通信實例 155
10.8 多執行緒的死鎖問題 157
10.9 多執行緒的缺點 157
10.10 常見面試題分析 158
10.10.1 請說明進程和執行緒的區別 158
10.10.2 一個具有生命的執行緒有哪些狀態 158
10.10.3 如何理解執行緒同步 158
10.10.4 哪些事件會導致執行緒死亡 159
10.11 本章習題 159
第11章 jdbc連結資料庫 161
11.1 jdbc簡介 161
11.1.1 什麼是jdbc 161
11.1.2 jdbc的目標 161
11.1.3 jdbc如何實現資料庫的平台無關性 162
11.2 jdbc中的常用類和接口 162
11.2.1 驅動程式管理類(drivermanager) 162
11.2.2 聲明類(statement) 162
11.2.3 資料庫連結類(connection) 163
11.2.4 結果集合類(resultset) 163
11.3 如何實現資料庫的連結 164
11.3.1 載入合適的資料庫驅動程式 164
11.3.2 資料庫配置問題 164
11.3.3 建立資料庫連結並獲得statement對象 165
11.3.4 執行資料庫查詢語句 166
11.3.5 獲得查詢結果 166
11.3.6 關閉資料庫連結 166
11.3.7 完整的示例程式 166
11.4 資料庫基本操作 168
11.4.1 創建資料庫表 168
11.4.2 查詢數據 169
11.4.3 添加數據 169
11.4.4 更改數據 169
11.4.5 刪除數據 170
11.5 常見面試題分析 170
11.5.1 jdbc的工作原理是什麼 170
11.5.2 如何使用連線池技術 170
11.5.3 如何使用sql更改數據 170
11.6 本章習題 171
第12章 java異常處理 172
12.1 理解異常 172
12.2 異常示例 172
12.3 java異常處理 174
12.3.1 try區塊 174
12.3.2 catch區塊 175
12.3.3 java異常規範 178
12.4 throwable類及其子類 178
12.4.1 throwable類的定義和方法 178
12.4.2 異常類的繼承關係 180
12.4.3 異常重拋的例子 181
12.5 運行期異常 184
12.6 自定義異常 185
12.7 finally子句 189
12.7.1 執行finally子句 189
12.7.2 finally子句的必要性 191
12.8 異常的幾個問題 192
12.8.1 異常丟失 193
12.8.2 構造函式中的異常處理 194
12.8.3 異常匹配 195
12.9 異常的優點 196
12.9.1 分離異常處理代碼 197
12.9.2 按方法調用順序向上傳播錯誤 198
12.9.3 分組並區分錯誤類型 200
12.10 常見面試題分析 201
12.10.1 哪個類是所有異常的基礎類 201
12.10.2 java如何處理異常 201
12.10.3 如何使用throws 201
12.11 本章習題 202
第13章 java的i/o處理 205
13.1 流(stream)的概念 205
13.2 字元流 205
13.2.1 輸入流類inputstream 205
13.2.2 輸出流類outputstream 206
13.3 位元組流 207
13.3.1 writer類 207
13.3.2 reader類 209
13.4 file類 209
13.4.1 創建資料夾(目錄) 210
13.4.2 創建檔案 210
13.4.3 複製檔案 212
13.4.4 刪除檔案 213
13.4.5 刪除資料夾 214
13.5 i/o流的典型運用 215
13.5.1 檔案流 215
13.5.2 讀取記憶體數據 216
13.5.3 連結檔案 218
13.5.4 管道流 219
13.5.5 隨機訪問檔案 219
13.5.6 從標準輸入讀取 220
13.5.7 i/o重定向 221
13.5.8 過濾流 222
13.5.9 序列化對象 223
13.6 常見面試題分析 224
13.6.1 寫一個複製檔案的程式 224
13.6.2 什麼是序列化 225
13.6.3 如何序列化和反序列化一個java對象 225
13.7 本章習題 225
第14章 java swing編程 227
14.1 swing容器 227
14.1.1 jframe容器 227
14.1.2 jpanel容器 228
14.2 swing的事件模型 230
14.2.1 製作一個按鈕 230
14.2.2 實現按鈕的事件監聽 231
14.2.3 swing的事件模型 232
14.3 swing組件 233
14.3.1 按鈕 234
14.3.2 圖示(icons) 234
14.3.3 文本 236
14.3.4 工具提示 237
14.3.5 單選按鈕 237
14.3.6 複選框 239
14.3.7 組合框 240
14.3.8 列表框 241
14.3.9 訊息框 243
14.3.10 選單 249
14.3.11 頁簽式面板 251
14.3.12 彈出式選單 253
14.3.13 工具條 254
14.3.14 進度條 256
14.3.15 對話框 257
14.3.16 檔案對話框 258
14.3.17 框線 260
14.3.18 表模型 262
14.3.19 樹模型 265
14.4 控制臺布局管理器 271
14.4.1 流布局管理器 271
14.4.2 邊界布局管理器 273
14.4.3 格線布局管理器 274
14.4.4 盒子布局管理器 276
14.5 常見面試題分析 277
14.5.1 swing事件模型的通用規則是什麼 277
14.5.2 如何使用flowlayout布局 278
14.6 本章習題 278
第四篇 java分散式計算技術
第15章 java網路編程 279
15.1 tcp/ip協定 279
15.1.1 ip協定和ip地址 279
15.1.2 tcp協定和連線埠 282
15.1.3 客戶/伺服器通信模型 282
15.2 udp協定 283
15.3 基於java的客戶/伺服器程式 283
15.3.1 socket及其原語 284
15.3.2 創建伺服器 285
15.3.3 創建客戶端 286
15.4 socket類詳解 288
15.4.1 創建socket 289
15.4.2 socket類的getxx()方法 291
15.4.3 socket類的setxx()方法 293
15.4.4 關閉socket 297
15.5 socketserver類 297
15.5.1 創建socketserver 297
15.5.2 socketserver類的兩個重要方法 299
15.5.3 讀取sockerserver信息 300
15.6 數據報通信 301
15.6.1 數據報通信簡介 301
15.6.2 datagrampacket類簡介 302
15.6.3 datagramsocket類簡介 304
15.6.4 實現數據報通信 306
15.7 常見面試題分析 309
15.7.1 簡述對tcp/ip協定的理解 309
15.7.2 java的tcp編程模型是什麼 309
15.7.3 udp協定的通信特點是什麼 309
15.8 本章習題 310
第16章 rmi技術 311
16.1 如何實現rmi程式 311
16.1.1 定義遠端接口 312
16.1.2 定義遠端對象 312
16.1.3 實現伺服器對象的stub和skeleton 313
16.1.4 創建伺服器程式 313
16.1.5 創建客戶端程式 314
16.1.6 運行rmi程式 315
16.2 rmi的動態載入類 317
16.3 rmi的特點 317
16.4 常見面試題分析 318
16.4.1 簡述rmi應用程式的組成 318
16.4.2 簡述分散式對象應用程式的任務 318
16.5 本章習題 318
第17章 jsp技術 320
17.1 jsp技術概述 320
17.1.1 jsp的基本概念 320
17.1.2 jsp的運行原理 321
17.2 構建jsp運行、開發環境 321
17.2.1 jre的安裝 322
17.2.2 tomcat的安裝 323
17.2.3 開發工具的選擇 325
17.2.4 建立和保存jsp檔案 326
17.3 jsp編程基礎 327
17.3.1 html標記 327
17.3.2 html表單 330
17.4 jsp基本語法 334
17.4.1 聲明 334
17.4.2 表達式 335
17.4.3 腳本 335
17.4.4 注釋 336
17.4.5 指令 336
17.4.6 動作 336
17.5 jsp指令 337
17.5.1 page指令 337
17.5.2 include指令 338
17.6 jsp動作 339
17.6.1 動作 340
17.6.2 動作 340
17.6.3 動作 341
17.6.4 動作 342
17.6.5 動作 343
17.6.6 動作 343
17.7 jsp內部對象 345
17.7.1 request對象 345
17.7.2 response對象 347
17.7.3 pagecontext對象 348
17.7.4 session對象 349
17.7.5 application對象 352
17.7.6 out對象 353
17.7.7 config對象 353
17.7.8 page對象 353
17.7.9 exception對象 354
17.7.10 內部對象的作用範圍 354
17.8 常見面試題分析 355
17.8.1 jsp的運行機制是什麼 355
17.8.2 jsp的內置對象及其用途是什麼 355
17.8.3 page和request作用範圍的區別是什麼 355
17.9 本章習題 355
第18章 java bean技術 358
18.1 java bean技術概述 358
18.2 java bean編寫規範 359
18.2.1 bean組件的工作機制 359
18.2.2 java bean的編寫要求 359
18.2.3 java bean的命名規範 359
18.2.4 java bean的包 359
18.2.5 java bean的結構 360
18.3 java bean屬性 361
18.3.1 單值(simple)屬性 361
18.3.2 索引(indexed)屬性 361
18.3.3 關聯(bound)屬性 362
18.3.4 約束(constrained)屬性 363
18.4 java bean方法 365
18.4.1 構造方法 365
18.4.2 訪問方法 366
18.4.3 一般方法 366
18.5 java bean事件 366
18.5.1 事件模型 367
18.5.2 事件狀態對象 368
18.5.3 事件監聽者接口與事件監聽者 368
18.5.4 事件監聽者註冊與註銷 369
18.5.5 適配類 370
18.6 java bean在jsp中的套用 370
18.6.1 調用java bean 370
18.6.2 連結資料庫bean 371
18.6.3 通過java bean查詢資料庫 373
18.6.4 向資料庫添加記錄 374
18.6.5 修改資料庫記錄 376
18.6.6 刪除資料庫記錄 378
18.7 常見面試題分析 379
18.7.1 jsp如何使用javabean 379
18.7.2 簡述什麼是javabean 380
18.8 本章習題 380
第19章 servlet技術 383
19.1 servlet概述 383
19.1.1 servlet的特點 383
19.1.2 servlet的套用範圍 384
19.1.3 servlet與jsp的關係 384
19.2 servlet的基本架構 384
19.2.1 servlet工作原理 384
19.2.2 servlet接口 385
19.2.3 典型servlet程式 385
19.3 servlet api 386
19.3.1 servlet方法 386
19.3.2 常用的servlet api 387
19.3.3 servlet生命周期 389
19.4 servlet開發 389
19.4.1 servlet的基本代碼 390
19.4.2 servlet與表單互動 391
19.4.3 servlet控制會話 392
19.5 常見面試題分析 395
19.5.1 servlet的生命周期是怎樣的 395
19.5.2 如何在servlet里獲取請求參數的值 395
19.5.3 什麼是servlet 395
19.6 本章習題 396
第20章 java與xml技術 398
20.1 標記語言的發展史 398
20.2 html語言及其局限 398
20.2.1 html語言 398
20.2.2 html語言的局限性 399
20.3 xml語言 400
20.3.1 xml的優勢 400
20.3.2 xml文檔的基礎知識 402
20.3.3 xml文檔結構 406
20.4 創建xml文檔 407
20.4.1 創建元素 407
20.4.2 創建空元素 408
20.4.3 元素屬性 409
20.4.4 注釋 409
20.4.5 實體 410
20.5 xml與java 411
20.5.1 xml與java結合理由 411
20.5.2 java如何解析xml文檔 411
20.6 dom解析xml文檔 412
20.6.1 dom(文檔對象模型) 412
20.6.2 dom的結構及接口 413
20.6.3 dom實現與核心api 413
20.6.4 基於dom的樹操作 413
20.7 常見面試題分析 416
20.7.1 簡述html語言的局限性 416
20.7.2 簡述xml的優勢 417
20.8 本章習題 417
第五篇 java編程實例
第21章 系統分析和設計 419
21.1 系統功能分析 419
21.2 資料庫設計 420
21.3 系統總體設計 422
21.3.1 伺服器端軟體結構 422
21.3.2 客戶端軟體結構 425
第22章 伺服器端功能模組的實現 430
22.1 啟動伺服器 430
22.2 伺服器主界面 431
22.3 服務連線執行緒 436
22.4 為客戶端提供功能服務模組 438
22.5 資料庫連線模組 445
22.6 管理登錄用戶模組 447
22.7 顯示用戶信息模組 449
22.8 存儲用戶信息的javabean 451
22.9 實現頭像顯示功能的公用類 453
22.10 顯示時間的公用類 455
22.11 設定視窗位置的公用類 455
第23章 客戶端功能模組的實現 457
23.1 登錄模組 457
23.2 客戶端主界面 463
23.3 聊天模組 477
23.4 查找好友模組 483
23.5 顯示好友信息模組 485
23.6 接收陌生人信息模組 488
23.7 更改用戶信息模組 490
23.8 用戶註冊模組 497
23.9 顯示版權資訊 504