注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計JAVA及其相關(guān)Java高級編程(第2版)

Java高級編程(第2版)

Java高級編程(第2版)

定 價:¥69.80

作 者: (美)斯貝爾
出版社: 清華大學(xué)出版社
叢編項:
標(biāo) 簽: Java

ISBN: 9787302139096 出版時間: 2006-11-01 包裝: 平裝
開本: 16 頁數(shù): 597 字數(shù):  

內(nèi)容簡介

  既然市面上已經(jīng)有眾多Java相關(guān)書籍,那么再寫本書的意義何在呢?首先,Java這一概念非常寬泛,其中仍有不少領(lǐng)域沒有詳細的介紹,甚至有些領(lǐng)域正是Java程序員們常需要使用的。另外,大型Java程序的開發(fā)需要通曉Java的各個不同方面,本書正是要起到這樣的幫助作用。本書各章都有一個共同的特點,即每章都代表專業(yè)Java開發(fā)人員需要掌握的一項技術(shù)。雖然部分章節(jié)內(nèi)容是J2SE(Java 2 Standard Edition)的傳統(tǒng)技術(shù),但J2EE(Java 2 Enterprise Edition)和Web應(yīng)用程序開發(fā)的絕大部分技術(shù)都是相通的。本書不要求讀者具備大量Java知識,但同樣不適合無編程基礎(chǔ)的讀者。軟件開發(fā)的背景知識和面向?qū)ο缶幊谈拍畹幕菊J識有助于閱讀本書。另外,由于部分技術(shù)主題涉及的內(nèi)容較廣,因此本書不適合作為這些主題的權(quán)威參考。有些內(nèi)容相當(dāng)復(fù)雜,如XML、線程和數(shù)據(jù)庫編程,難以在一章內(nèi)介紹完全,不過仍將為這些主題提供相當(dāng)豐富的信息,足以進行這方面程序的高效開發(fā)。另外,本書介紹的部分功能是Java 1.5(也稱Java 5)中新引入的,因此早期Java版本可能無法使用這些功能。不過本書將盡量標(biāo)識出Java 5新版本中的特定功能,如果早期版本中無法使用這些功能,希望您不會因此感到驚訝或失望。

作者簡介

  本書提供作譯者介紹Brett Spell,一名受人尊敬的暢銷書作家,從90年代起就開始從事專業(yè)Java開發(fā),是一名通過Sun認證的知名開發(fā)人員和架構(gòu)師。Brett還是Java開發(fā)領(lǐng)域中久負盛名的專業(yè)雜志Java Pro的定期撰稿人和Intel Developer Services網(wǎng)站的專欄作家。

圖書目錄

第1章 Java深入介紹    1
1.1 Java體系結(jié)構(gòu)    1
1.2 Java虛擬機    3
1.2.1  JVM的不同實現(xiàn)    4
1.2.2 JVM作為運行時執(zhí)行環(huán)境    4
1.2.3  JVM運行時數(shù)據(jù)區(qū)    5
1.2.4 垃圾收集器    7
1.2.5 JVM:加載、鏈接和初始化    7
1.2.6 執(zhí)行字節(jié)碼    9
1.3 Java類文件格式    11
1.4 Java編程語言與API    13
1.4.1 Java編程語言    13
1.4.2  Java API    13
1.5 JVM配套的Java實用工具    14
1.5.1 Java編譯器    14
1.5.2 Java解釋器    15
1.5.3 Java類反匯編程序    16
1.6 小結(jié)    16
第2章 庫、類和方法的設(shè)計    19
2.1 庫的設(shè)計    19
2.2 類的設(shè)計    20
2.2.1 松耦合    21
2.2.2 強聚合    35
2.2.3 封裝    38
2.2.4 不變對象與不變字段    41
2.2.5 重寫對象方法    42
2.3 方法設(shè)計    48
2.3.1 參數(shù)傳遞    49
2.3.2 方法命名    52
2.3.3 最小化代碼重復(fù)    53
2.3.4 變量參數(shù)    55
2.3.5 使用異常    57
2.3.6 斷言    75
2.3.7 枚舉    77
2.4 小結(jié)    79
第3章 在應(yīng)用程序中使用線程    81
3.1 Java線程    81
3.2 創(chuàng)建線程    83
3.3 使用線程的缺點    85
3.3.1 初始啟動變慢    85
3.3.2 資源利用    85
3.3.3 復(fù)雜性增加    85
3.4 線程管理    87
3.5 共享資源的使用同步    91
3.5.1 同步方法和同步代碼塊的嵌套調(diào)用    94
3.5.2 同步代碼塊與同步方法    94
3.5.3 死鎖    95
3.6 線程優(yōu)先級    98
3.7 監(jiān)控程序線程    99
3.8 在應(yīng)用程序中加入線程    101
3.9 線程控制    109
3.9.1 線程啟動    111
3.9.2 線程休眠    112
3.9.3 線程掛起    116
3.9.4 線程恢復(fù)    119
3.9.5 線程停止    120
3.9.6 線程中斷    121
3.10 完成DownloadManager    123
3.11 線程中的過時方法    126
3.12 DownloadFiles類    127
3.13 未捕捉的異常    132
3.14 自愿放棄處理器    133
3.15 并發(fā)工具    135
3.16 小結(jié)    136
第4章 集合    137
4.1 集合演變    139
4.1.1 Java 2/Java 1.2    139
4.1.2 Java 5/Java 1.5    140
4.2 集合類與接口    140
4.2.1 Collection接口    141
4.2.2 List    145
4.2.3 ListIterator    148
4.2.4 ArrayList    149
4.2.5 LinkedList    150
4.2.6 Vector    151
4.2.7 Stack    151
4.2.8 Set    152
4.2.9 HashSet    155
4.2.10 構(gòu)造函數(shù)    155
4.2.11 LinkedHashSet    155
4.2.12 TreeSet    155
4.2.13 EnumSet    159
4.2.14 Map    160
4.2.15 HashMap    162
4.2.16 LinkedHashMap    163
4.2.17 TreeMap    163
4.2.18 EnumMap    163
4.2.19 IdentityHashMap    163
4.2.20 WeakHashMap    164
4.2.21 ConcurrentHashMap    165
4.2.22 Queue    165
4.2.23 PriorityQueue    166
4.2.24 PriorityBlockingQueue    166
4.2.25 ArrayBlockingQueue    166
4.2.26 LinkedBlockingQueue    166
4.2.27 ConcurrentLinkedQueue    167
4.2.28 SynchronousQueue    167
4.2.29 DelayQueue    167
4.3 集合使用技巧    168
4.3.1 淺副本和深副本    169
4.3.2 引用接口代替引用實現(xiàn)    169
4.4 小結(jié)    170
第5章 布局管理器    171
5.1 布局管理器與GUI構(gòu)造    171
5.2 CardLayout    173
5.2.1 構(gòu)造CardLayout    173
5.2.2 子組件尺寸    174
5.2.3 子組件位置    174
5.2.4 尺寸調(diào)整    175
5.2.5 容器尺寸    175
5.3  FlowLayout    175
5.3.1 構(gòu)造FlowLayout    175
5.3.2 約束    175
5.3.3 子組件尺寸    176
5.3.4 子組件位置    176
5.3.5 尺寸調(diào)整    178
5.3.6 容器尺寸    178
5.4 GridLayout    179
5.4.1 構(gòu)造GridLayout    180
5.4.2 約束    182
5.4.3 子組件尺寸    182
5.4.4 子組件位置    182
5.4.5 尺寸調(diào)整    183
5.4.6 容器尺寸    183
5.5 BorderLayout    183
5.5.1 構(gòu)造BorderLayout    185
5.5.2 約束    185
5.5.3 子組件尺寸    185
5.5.4 子組件位置    186
5.5.5 尺寸調(diào)整    186
5.5.6 容器尺寸    187
5.6 GridBagLayout    187
5.6.1 構(gòu)造GridBagLayout    190
5.6.2 約束    190
5.6.3 子組件尺寸    210
5.6.4 子組件位置    211
5.6.5 尺寸變化    211
5.6.6 容器尺寸    212
5.7 BoxLayout    212
5.7.1 對齊值、上升和下降    212
5.7.2 構(gòu)造BoxLayout    216
5.7.3 約束    216
5.7.4 子組件尺寸    216
5.7.5 子組件位置    218
5.7.6 尺寸縮放    218
5.7.7 容器尺寸    219
5.7.8 Swing中的Box類    219
5.8 布局管理器的使用準(zhǔn)則    222
5.8.1 組合使用布局管理器    222
5.8.2 不使用布局管理器的絕對定位    224
5.8.3 不可見組件    224
5.8.4 添加組件時指定索引    225
5.9 創(chuàng)建自定義布局管理器    227
5.9.1 LayoutManager2接口方法    228
5.9.2 LayoutManager方法    230
5.9.3 使用自定義布局管理器    234
5.10 小結(jié)    235
第6章  使用Swing的JTable組件    237
6.1  數(shù)據(jù)模型    238
6.2  使用含有JTable組件的JScrollPane類    242
6.3  JTable組件的面向列設(shè)計    245
6.4  調(diào)整表格尺寸    245
6.5  調(diào)整列的尺寸    246
6.5.1  AUTO_RESIZE_OFF    246
6.5.2  AUTO_RESIZE_NEXT_COLUMN    246
6.5.3  AUTO_RESIZE_SUBSEQUENT_COLUMNS    247
6.5.4  AUTO_RESIZE_LAST_COLUMN    247
6.5.5  AUTO_RESIZE_ALL_COLUMNS    248
6.6  單元格繪制    248
6.6.1  創(chuàng)建定制的繪制器    249
6.6.2  JTable組件的默認繪制器    253
6.7  編輯表格單元格    255
6.8  表格選項設(shè)置    261
6.8.1  行、列、以及單元格選項模式的結(jié)合    262
6.8.2  列表選項模式    262
6.8.3  選項模式的結(jié)合    263
6.8.4  用編程方式設(shè)置選項    266
6.9  表格的標(biāo)題    267
6.9.1  繪制標(biāo)題    267
6.9.2  工具提示及繪制器的重新使用    269
6.9.3  JTableHeader    270
6.9.4  創(chuàng)建行標(biāo)題    275
6.10  對表格按行進行排序    279
6.10.1  對列選項進行動態(tài)排序    281
6.10.2  使用比較    285
6.11  添加和刪除表格行    287
6.12  顯示特定的表格行    289
6.13  小結(jié)    290
第7章  使用Swing的JTree組件    291
7.1  JTree術(shù)語簡介    292
7.2  創(chuàng)建JTree實例    293
7.2.1  TreeModel    296
7.2.2  創(chuàng)建樹節(jié)點    297
7.3  TreePath類    309
7.4  TreeModelListener接口    311
7.4.1  treeNodesChanged()方法    311
7.4.2  treeNodesInserted()方法    311
7.4.3  treeNodesRemoved()方法    311
7.4.4  treeStructureChanged()方法    311
7.5  TreeModelEvent類    311
7.5.1  getTreePath()和getPath()方法    312
7.5.2  getChildren()方法    312
7.5.3  getChildIndices()方法    312
7.6  DefaultTreeModel類    312
7.7  繪制樹節(jié)點    314
7.8  編輯樹的節(jié)點    320
7.8.1  DefaultTreeCellEditor和DefaultCellEditor類    323
7.8.2  創(chuàng)建自定義編輯器    324
7.8.3  限制編輯某些節(jié)點    326
7.9  定制分支節(jié)點句柄    327
7.10  線型與Java或Metal 外觀    328
7.11  節(jié)點選擇    330
7.11.1  選擇方式    330
7.11.2  TreeSelectionListener類    332
7.11.3  TreeSelectionEvent    333
7.11.4  JTree中的選擇方法    333
7.12  折疊和展開節(jié)點    335
7.13  小結(jié)    338
第8章  添加剪切和粘貼功能    350
8.1  剪貼板:剪切和復(fù)制數(shù)據(jù)的存儲位置    340
8.1.1  系統(tǒng)剪貼板    340
8.1.2  剪貼板    341
8.1.3  Transferable    341
8.1.4  ClipboardOwner實現(xiàn)    342
8.1.5  DataFlavor的使用    343
8.2  存取與檢索串行化的Java對象    345
8.3  在Java程序和本地應(yīng)用程序之間傳輸數(shù)據(jù)    357
8.4  編寫任意的二進制數(shù)據(jù)    357
8.5  小結(jié)    362
第9章  添加拖放功能    363
9.1  拖放操作的類型    363
9.2  預(yù)定義光標(biāo)    364
9.3  從本地應(yīng)用程序執(zhí)行文件選擇釋放    365
9.3.1  添加對釋放操作的支持    365
9.3.2  添加對拖動操作的支持    374
9.4  執(zhí)行本地傳輸    385
9.4.1  本地對象DataFlavor的概念    386
9.4.2  處理引用傳輸    387
9.5  執(zhí)行鏈接/引用操作    389
9.6  在Java程序和本地應(yīng)用程序之間傳輸    390
9.7  傳輸文本數(shù)據(jù)    392
9.7.1  在Java程序和本地應(yīng)用程序之間傳輸文本數(shù)據(jù)    392
9.7.2  為文本數(shù)據(jù)創(chuàng)建一個新的Transferable    394
9.8  小結(jié)    396
第10章  打印    397
10.1  定位打印服務(wù)    398
10.1.1  DocFlavor    399
10.1.2  選擇正確的打印機    401
10.1.3  AttributeSet    402
10.1.4  Attribute類    402
10.1.5  Attribute Roles    403
10.1.6  接口和實現(xiàn)    403
10.1.7  用戶界面的打印機選擇    406
10.2  創(chuàng)建打印任務(wù)    407
10.3  定義打印文檔    407
10.4  初始化打印    408
10.5  監(jiān)控打印任務(wù)    408
10.5.1  監(jiān)控屬性變化    409
10.5.2  取消打印任務(wù)    410
10.6  Service-Formatted打印的概念    411
10.6.1  支持類    412
10.6.2  打印應(yīng)用程序示例    416
10.7  小結(jié)    422
第11章  JDBC介紹    423
11.1  SQL標(biāo)準(zhǔn)和JDBC版本    424
11.2  JDBC驅(qū)動器    425
11.3  獲得數(shù)據(jù)庫連接    428
11.3.1  JDBC的URL格式    428
11.3.2  連接    429
11.3.3  通過數(shù)據(jù)源獲得連接(2.x選擇包)    429
11.3.4  DatabaseMetaData接口    432
11.4  Statement    440
11.4.1  executeUpdata()方法    441
11.4.2  executeQuery()方法    441
11.4.3  execute()方法    441
11.4.4  addBatch()和executeBatch()方法    442
11.4.5  PreparedStatement類    442
11.4.6  CallableStatement    445
11.4.7  ParameterMetaData類    446
11.5  JDBC數(shù)據(jù)類型    447
11.5.1  ARRAY    448
11.5.2  BLOB、CLOB    449
11.5.3  DATALINK    449
11.5.4  DATE、TIME、TIMESTAMP    450
11.5.5  DISTINCT    450
11.5.6  STRUCT    450
11.5.7  REF    451
11.5.8  JAVA_OBJECT    451
11.5.9  OTHER    451
11.6  ResultSet類    451
11.6.1  單向前與滾動(滾動類型)    452
11.6.2  只讀與可更新(并發(fā)模式)    452
11.6.3  更新敏感性    452
11.6.4  Holdability    453
11.6.5  選擇ResultSet屬性    453
11.6.6  使用ResultSet    454
11.7  ResultSetMetaData    458
11.8  RowSet    459
11.9  事務(wù)    460
11.9.1  保存點    463
11.9.2  只讀事務(wù)    464
11.9.3  分布式事務(wù)    466
11.10  連接池    466
11.11  錯誤和警告    468
11.11.1  SQLException    468
11.11.2  SQLWarning    471
11.12  調(diào)試功能    472
11.13  釋放資源    473
11.14  小結(jié)    473
第12章  應(yīng)用程序國際化    475
12.1  地區(qū)    476
12.2  資源綁定    477
12.3  區(qū)分地區(qū)格式與分析    483
12.3.1  日期的格式化和分析    484
12.3.2  時間的格式化及分析    486
12.3.3  數(shù)值的格式化及分析    487
12.4  MessageFormat    489
12.4.1  指定地區(qū)    491
12.4.2  指定格式化對象    492
12.5  ChoiceFormat    493
12.6  分析文本數(shù)據(jù)    495
12.7  文本比較與排序    501
12.7.1  Collator強度    502
12.7.2  分解模式    503
12.8  應(yīng)用程序國際化    504
12.9  運行時修改Locale選項    515
12.10  native2ascii    522
12.11  小結(jié)    523
第13章  XML的使用    525
13.1  XML與HTML    526
13.1.1  描述數(shù)據(jù)    527
13.1.2  形式合理的文檔    528
13.2  何時及為何使用XML    531
13.3  創(chuàng)建XML文檔    532
13.3.1  root元素    533
13.3.2  XML文檔的組成部分    534
13.4  分析及有效性    535
13.4.1  使用JAXP中的DOM實現(xiàn)進行分析    535
13.4.2  全面研究DOM文檔    550
13.4.3  編輯DOM文檔    555
13.5  轉(zhuǎn)換XML文檔    561
13.6  小結(jié)    569
第14章  添加注解    571
14.1  注解的使用    572
14.1.1  重寫    574
14.1.2  SuppressWarnings注解    575
14.2  創(chuàng)建定制注解    579
14.2.1  Target注解    581
14.2.2  Retention注解    582
14.2.3  Documented注解    584
14.2.4  Inherited注解    585
14.3  替換外部元數(shù)據(jù)    587
14.4  注解處理工具的使用    590
14.4.1  AnnotationProcessorFactory接口    590
14.4.2  Declaration接口    593
14.4.3  產(chǎn)生 Side文件    595
14.5  小結(jié)    597

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) hotzeplotz.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號