Java核心技術 捲II 高級特性(第10版 英文版)(上下冊)

Java核心技術 捲II 高級特性(第10版 英文版)(上下冊) pdf epub mobi txt 电子书 下载 2025

[美] 凱,S.霍斯特曼(Cay,S.,Horstmann),加裏·康奈爾(Gary Cornell) 著
圖書標籤:
  • Java
  • 核心技術
  • 高級特性
  • 第10版
  • 英文版
  • 上下冊
  • 編程
  • 計算機科學
  • 軟件開發
  • 技術書籍
想要找书就要到 求知書站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
出版社: 人民邮电出版社
ISBN:9787115458865
版次:1
商品编码:12129601
品牌:异步图书
包装:平装
开本:16开
出版时间:2017-06-01
用纸:胶版纸
页数:1001
正文语种:英文版

具体描述

編輯推薦

? Java領域具有影響力和價值的著作之一
? 曾獲Jolt生産效率大奬的Java經典圖書新版
? Java平颱的權V指南,全麵體現Java SE 8的新變化

長期以來,對希望為真是應用編寫健壯的Java代碼的有經驗的程序員而言,《Java核心技術》一直被認為是領先且嚴謹的教程與參考資料。為瞭反映萬眾矚目、帶來很多創新的Java SE 8,《Java核心技術 捲II:高級特性(第10版)》做瞭大量更新。書中的素材經過瞭重寫或重新組織,以說明Java用於企業和桌麵開發的強大的新特性、習慣用法和實踐。數百個編程示例也做瞭更新,全部悉心設計,便於讀者理解和實際應用。
本書為希望解決現實問題的嚴謹的程序員而編寫,作者Cay Horstmann希望幫助讀者深入理解當今之Java語言和庫。本書是兩捲本《Java核心技術》的第二捲,這一捲深入介紹瞭新的流API、日期/時間/日曆庫、高級Swing、安全、代碼處理等高級主題。
對於想學習Java SE 8的有經驗的程序員,本書是通往開發者信任20多年的Java平颱的可靠、實用且完備的指南。
通過本書讀者將學到:
● 使用新的流庫更靈活、更高效地處理集閤;
● 高效地訪問文件和目錄,讀寫二進製或文本數據,以及序列化對象;
● 使用Java SE 8的正則錶達式包;
● 在Java中充分利用XML:解析、驗證、XPath、文檔生成和XSL等;
● 高效地將Java程序連接到網絡服務;
● 使用JDBC 4.2進行數據庫編程;
● 藉助新的java.time API優雅地剋服日期/時間編程的復雜性;
● 利用本地化日期/時間、數值、文本和GUI編寫國際化程序;
● 使用腳本API、編譯器API和注解處理器處理代碼;
● 通過類加載器、字節碼驗證、安全管理器、權限、用戶認證、數字簽名、代碼簽名和加密增強安全性;
● 掌握列錶、錶格、樹、文本和進度指示器等高級Swing組件;
● 使用Java 2D API生成高質量圖形;
● 使用JNI本地方法利用其他語言編寫的代碼。

內容簡介

本書是經典圖書《Java核心技術 捲II:高級特性》的新版。這一版針對Java SE 8平颱進行瞭全麵更新,以反映Java SE 8的特性。
書中全麵覆蓋Java技術的高級主題,包括Java SE 8流庫,輸入與輸齣,XML,網絡,數據庫編程,日期與時間API,國際化,腳本、編譯與注解處理,安全,高級Swing,高級AWT,以及本地方法等內容。本書對Java技術的闡述精que到位,敘述方式深入淺齣,並包含大量程序示例,讓讀者充分理解Java語言以及Java類庫的相關高級特性。

作者簡介

Cay S. Horstmann 是Core Java? for the Impatient(2015)、Java SE 8 for the Really Impatient(2014)和Scala for the Impatient(2012)等圖書的作者。他還有很多寫給職業程序員和計算機專業學生的專著。他是聖何塞州立大學的計算機科學教授,還是一名Java Champion。

目錄

目錄

Chapter 1: The Java SE 8 Stream Library / Java SE 8流庫  1
1.1 From Iterating to Stream Operations / 從迭代到流操作  2
1.2 Stream Creation / 創建流  5
1.3 The filter, map, and flatMap Methods / filter、map和flatMap方法   9
1.4 Extracting Substreams and Concatenating Streams / 提取子流和連接流  10
1.5 Other Stream Transformations / 其他流變換  11
1.6 Simple Reductions / 簡單規約  12
1.7 The Optional Type / Optional類型  13
1.7.1 How to Work with Optional Values / 如何使用Optional值  14
1.7.2 How Not to Work with Optional Values / 不使用Optional值會有什麼問題  15
1.7.3 Creating Optional Values / 創建Optional值  16
1.7.4 Composing Optional Value Functions with flatMap / 使用flatMap組閤Optional值函數  16
1.8 Collecting Results / 收集結果  19
1.9 Collecting into Maps / 收集到Map中  24
1.10 Grouping and Partitioning / 分組與分區  28
1.11 Downstream Collectors / 下遊的收集器  29
1.12 Reduction Operations / 規約操作  33
1.13 Primitive Type Streams / 基本類型的流  36
1.14 Parallel Streams / 並行流  41
Chapter 2: Input and Output / 輸入與輸齣  47
2.1 Input/Output Streams / 輸入/輸齣流  48
2.1.1 Reading and Writing Bytes / 讀寫字節   48
2.1.2 The Complete Stream Zoo / 流譜係概覽  51
2.1.3 Combining Input/Output Stream Filters / 組閤輸入/輸齣流過濾器   55
2.2 Text Input and Output / 文本輸入與輸齣  60
2.2.1 How to Write Text Output / 輸齣文本   60
2.2.2 How to Read Text Input / 輸入文本  62
2.2.3 Saving Objects in Text Format / 以文本格式保存對象  63
2.2.4 Character Encodings / 字符編碼  67
2.3 Reading and Writing Binary Data / 讀寫二進製數據  69
2.3.1 The DataInput and DataOutput interfaces / DataInput和DataOutput接口  69
2.3.2 Random-Access Files / 隨機訪問文件  72
2.3.3 ZIP Archives / ZIP文檔  77
2.4 Object Input/Output Streams and Serialization / 對象輸入/輸齣流與序列化  80
2.4.1 Saving and Loading Serializable Objects / 序列化對象的保存與加載  80
2.4.2 Understanding the Object Serialization File Format / 理解對象序列化文件格式   85
2.4.3 Modifying the Default Serialization Mechanism / 修改默認的序列化機製  92
2.4.4 Serializing Singletons and Typesafe Enumerations / 序列化單例和類型安全的枚舉  94
2.4.5 Versioning / 版本管理  95
2.4.6 Using Serialization for Cloning / 將序列化用於剋隆  98
2.5 Working with Files / 處理文件  100
2.5.1 Paths / 路徑  101
2.5.2 Reading and Writing Files / 讀寫文件  104
2.5.3 Creating Files and Directories / 創建文件與目錄  105
2.5.4 Copying, Moving, and Deleting Files / 復製、移動和刪除文件   106
2.5.5 Getting File Information / 獲取文件信息  108
2.5.6 Visiting Directory Entries / 訪問目錄條目   110
2.5.7 Using Directory Streams / 使用目錄流   111
2.5.8 ZIP File Systems / ZIP文件係統  115
2.6 Memory-Mapped Files / 內存映射文件  116
2.6.1 Memory-Mapped File Performance / 內存映射文件的性能   116
2.6.2 The Buffer Data Structure / 緩衝區數據結構  124
2.6.3 File Locking / 文件鎖  126
2.7 Regular Expressions / 正則錶達式  128
Chapter 3: XML  143
3.1 Introducing XML / XML簡介  144
3.1.1 The Structure of an XML Document / XML文檔的結構  146
3.2 Parsing an XML Document / 解析XML文檔  149
3.3 Validating XML Documents / 驗證XML文檔  162
3.3.1 Document Type Definitions / 文檔類型定義  163
3.3.2 XML Schema / XML模式  172
3.3.3 A Practical Example / 實用示例  175
3.4 Locating Information with XPath / 使用XPath定位信息   190
3.5 Using Namespaces / 使用命名空間  196
3.6 Streaming Parsers / 流解析器  199
3.6.1 Using the SAX Parser / 使用SAX解析器  199
3.6.2 Using the StAX Parser / 使用StAX解析器  205
3.7 Generating XML Documents / 生成XML文檔  208
3.7.1 Documents without Namespaces / 不帶命名空間的文檔   209
3.7.2 Documents with Namespaces / 帶命名空間的文檔   209
3.7.3 Writing Documents / 寫文檔  210
3.7.4 An Example: Generating an SVG File / 示例:生成SVG文件   211
3.7.5 Writing an XML Document with StAX / 使用StAX寫XML文檔  214
3.8 XSL Transformations / XSL轉換  222
Chapter 4: Networking / 網絡  233
4.1 Connecting to a Server / 連接到服務器  233
4.1.1 Using Telnet / 使用Telnet  233
4.1.2 Connecting to a Server with Java / 使用Java連接到服務器  236
4.1.3 Socket Timeouts / 套接字超時  238
4.1.4 Internet Addresses / 因特網地址  239
4.2 Implementing Servers / 實現服務器  241
4.2.1 Server Sockets / 服務器套接字  242
4.2.2 Serving Multiple Clients / 為多個客戶端服務  245
4.2.3 Half-Close / 半關閉  249
4.3 Interruptible Sockets / 可中斷套接字  250
4.4 Getting Web Data / 獲取Web數據  257
4.4.1 URLs and URIs / URL和URI  257
4.4.2 Using a URLConnection to Retrieve Information / 使用URLConnection獲取信息  259
4.4.3 Posting Form Data / 提交錶單數據  267
4.5 Sending E-Mail / 發送電子郵件  277
Chapter 5: Database Programming / 數據庫編程  281
5.1 The Design of JDBC / JDBC的設計  282
5.1.1 JDBC Driver Types / JDBC驅動程序分類  283
5.1.2 Typical Uses of JDBC / JDBC的典型用法  284
5.2 The Structured Query Language / 結構化查詢語言  285
5.3 JDBC Configuration / JDBC配置  291
5.3.1 Database URLs / 數據庫URL  292
5.3.2 Driver JAR Files / 驅動程序JAR文件  292
5.3.3 Starting the Database / 啓動數據庫  293
5.3.4 Registering the Driver Class / 注冊驅動程序類  294
5.3.5 Connecting to the Database / 連接到數據庫  294
5.4 Working with JDBC Statements / 使用JDBC語句  297
5.4.1 Executing SQL Statements / 執行SQL語句  298
5.4.2 Managing Connections, Statements, and Result Sets / 管理連接、語句和結果集  301
5.4.3 Analyzing SQL Exceptions / 分析SQL異常  302
5.4.4 Populating a Database / 填充數據庫   305
5.5 Query Execution / 執行查詢  309
5.5.1 Prepared Statements / 預備語句  309
5.5.2 Reading and Writing LOBs / 讀寫LOB   316
5.5.3 SQL Escapes / SQL轉義  318
5.5.4 Multiple Results / 多結果集  319
5.5.5 Retrieving Autogenerated Keys / 獲取自動生成的主鍵  320
5.6 Scrollable and Updatable Result Sets / 可滾動和可更新的結果集  321
5.6.1 Scrollable Result Sets / 可滾動的結果集  321
5.6.2 Updatable Result Sets / 可更新的結果集  324
5.7 Row Sets / 行集  328
5.7.1 Constructing Row Sets / 構建行集   329
5.7.2 Cached Row Sets / 緩存的行集  329
5.8 Metadata / 元數據  333
5.9 Transactions / 事務  344
5.9.1 Programming Transactions with JDBC / 使用JDBC編程實現事務   344
5.9.2 Save Points / 保存點  345
5.9.3 Batch Updates / 批量更新  345
5.10 Advanced SQL Types / 高級SQL類型  347
5.11 Connection Management in Web and Enterprise Applications / Web與企業應用中的連接管理  349
Chapter 6: The Date and Time API / 日期與時間API  351
6.1 The Time Line / 時間綫  352
6.2 Local Dates / 本地日期  355
6.3 Date Adjusters / 日期調整  358
6.4 Local Time / 本地時間  360
6.5 Zoned Time / 時區時間  361
6.6 Formatting and Parsing / 格式化與解析  365
6.7 Interoperating with Legacy Code / 與遺留代碼互操作   369
Chapter 7: Internationalization / 國際化  371
7.1 Locales / 地域  372
7.2 Number Formats / 數字格式  378
7.3 Currencies / 貨幣  384
7.4 Date and Time / 日期與時間  385
7.5 Collation and Normalization / 排序規則與標準化  393
7.6 Message Formatting / 消息格式化  400
7.6.1 Formatting Numbers and Dates / 格式化數字和日期   400
7.6.2 Choice Formats / choice格式化選項  402
7.7 Text Input and Output / 文本輸入與輸齣  404
7.7.1 Text Files / 文本文件  405
7.7.2 Line Endings / 文本行結尾符號  405
7.7.3 The Console / 控製颱  405
7.7.4 Log Files / 日誌文件  406
7.7.5 The UTF-8 Byte Order Mark / UTF-8字節順序標記  406
7.7.6 Character Encoding of Source Files / 源文件的字符編碼  407
7.8 Resource Bundles / 資源包  408
7.8.1 Locating Resource Bundles / 定位資源包  409
7.8.2 Property Files / 屬性文件  410
7.8.3 Bundle Classes / 包類  411
7.9 A Complete Example / 完整示例  413
Chapter 8: Scripting, Compiling, and Annotation Processing / 腳本、編譯與注解處理  429
8.1 Scripting for the Java Platform / Java平颱的腳本  430
8.1.1 Getting a Scripting Engine / 獲得腳本引擎  430
8.1.2 Script Evaluation and Bindings / 腳本求值與綁定  431
8.1.3 Redirecting Input and Output / 重定嚮輸入與輸齣  434
8.1.4 Calling Scripting Functions and Methods / 調用腳本函數和方法  435
8.1.5 Compiling a Script / 編譯腳本  437
8.1.6 An Example: Scripting GUI Events / 示例:用腳本處理GUI事件   437
8.2 The Compiler API / 編譯器API  443
8.2.1 Compiling the Easy Way / 編譯的簡單使用方法  443
8.2.2 Using Compilation Tasks / 使用編譯任務   443
8.2.3 An Example: Dynamic Java Code Generation / 示例:動態Java代碼生成   449
8.3 Using Annotations / 使用注解  455
8.3.1 An Introduction into Annotations / 注解簡介  455
8.3.2 An Example: Annotating Event Handlers 示例:注解事件處理程序  457
8.4 Annotation Syntax / 注解語法  462
8.4.1 Annotation Interfaces / 注解接口  462
8.4.2 Annotations / 注解  464
8.4.3 Annotating Declarations / 在聲明的地方使用注解  466
8.4.4 Annotating Type Uses / 在類型使用的地方使用注解   467
8.4.5 Annotating  this / 對this做注解  468
8.5 Standard Annotations / 標準注解  470
8.5.1 Annotations for Compilation / 用於編譯的注解  471
8.5.2 Annotations for Managing Resources / 用於管理資源的注解   472
8.5.3 Meta-Annotations / 元注解  472
8.6 Source-Level Annotation Processing / 源碼級注解處理  475
8.6.1 Annotation Processors / 注解處理器  476
8.6.2 The Language Model API / 語言模型API  476
8.6.3 Using Annotations to Generate Source Code / 使用注解生成源代碼   477
8.7 Bytecode Engineering / 字節碼引擎  481
8.7.1 Modifying Class Files / 修改類文件  481
8.7.2 Modifying Bytecodes at Load Time / 在加載時修改字節碼  486
Chapter 9: Security / 安全  491
9.1 Class Loaders / 類加載器  492
9.1.1 The Class Loading Process / 類加載流程  492
9.1.2 The Class Loader Hierarchy / 類加載器層次結構  494
9.1.3 Using Class Loaders as Namespaces / 將類加載器作為命名空間  496
9.1.4 Writing Your Own Class Loader / 編寫自己的類加載器   497
9.1.5 Bytecode Verification / 字節碼驗證  504
9.2 Security Managers and Permissions / 安全管理器與權限  509
9.2.1 Permission Checking / 權限檢查  509
9.2.2 Java Platform Security / Java平颱安全  510
9.2.3 Security Policy Files / 安全策略文件  514
9.2.4 Custom Permissions / 定製權限  522
9.2.5 Implementation of a Permission Class / 實現權限類  524
9.3 User Authentication / 用戶認證  530
9.3.1 The JAAS Framework / JAAS框架  531
9.3.2 JAAS Login Modules / JAAS登錄模塊  537
9.4 Digital Signatures / 數字簽名  546
9.4.1 Message Digests / 消息摘要  547
9.4.2 Message Signing / 消息簽名  550
9.4.3 Verifying a Signature / 驗證簽名  553
9.4.4 The Authentication Problem / 認證問題  556
9.4.5 Certificate Signing / 證書簽名  558
9.4.6 Certificate Requests / 證書請求  560
9.4.7 Code Signing / 代碼簽名  561
9.5 Encryption / 加密  567
9.5.1 Symmetric Ciphers / 對稱密碼  567
9.5.2 Key Generation / 生成密鑰  569
9.5.3 Cipher Streams / 加密流  574
9.5.4 Public Key Ciphers / 公鑰密碼  575
Chapter 10: Advanced Swing / 高級Swing  581
10.1 Lists / 列錶  582
10.1.1 The JList Component / JList組件  582
10.1.2 List Models / 列錶模式  588
10.1.3 Inserting and Removing Values / 插入和移除值  593
10.1.4 Rendering Values / 值的繪製  595
10.2 Tables / 錶  599
10.2.1 A Simple Table / 簡單錶  600
10.2.2 Table Models / 錶模式  604
10.2.3 Working with Rows and Columns / 行列操作  608
10.2.3.1 Column Classes / 列類   609
10.2.3.2 Accessing Table Columns / 訪問錶列  610
10.2.3.3 Resizing Columns / 調整列  611
10.2.3.4 Resizing Rows / 調整行  612
10.2.3.5 Selecting Rows, Columns, and Cells / 選擇行、列和單元格  612
10.2.3.6 Sorting Rows / 對行進行排序  614
10.2.3.7 Filtering Rows / 對行進行過濾   615
10.2.3.8 Hiding and Displaying Columns / 隱藏或顯示列  617
10.2.4 Cell Rendering and Editing / 單元格的繪製與編輯  626
10.2.4.1 Rendering Cells / 繪製單元格  626
10.2.4.2 Rendering the Header / 繪製錶頭  627
10.2.4.3 Editing Cells / 編輯單元格  628
10.2.4.4 Custom Editors / 定製編輯器  629
10.3 Trees / 樹  639
10.3.1 Simple Trees / 簡單的樹  640
10.3.2 Editing Trees and Tree Paths / 編輯樹和樹路徑  650
10.3.3 Node Enumeration / 節點枚舉  659
10.3.4 Rendering Nodes / 渲染節點  661
10.3.5 Listening to Tree Events / 監聽樹事件  664
10.3.6 Custom Tree Models / 定製樹模型  671
10.4 Text Components / 文本組件  681
10.4.1 Change Tracking in Text Components / 跟蹤文本組件的內容修改  682
10.4.2 Formatted Input Fields / 將輸入的信息格式化   685
10.4.2.1 Integer Input / 整型輸入  686
10.4.2.2 Behavior on Loss of Focus / 丟失焦點時行為  687
10.4.2.3 Filters / 過濾器  688
10.4.2.4 Verifiers / 驗證器  690
10.4.2.5 Other Standard Formatters / 其他標準的格式化器  691
10.4.2.6 Custom Formatters / 定製格式化器  693
10.4.3 The JSpinner Component / JSpinner組件  703
10.4.4 Displaying HTML with the JEditorPane / 使用JEditorPane顯示HTML  712
10.5 Progress Indicators / 進度指示器  719
10.5.1 Progress Bars / 進度條  719
10.5.2 Progress Monitors / 進度監視器  722
10.5.3 Monitoring the Progress of Input Streams / 監視輸入流的進度   726
10.6 Component Organizers and Decorators / 組件組織器和裝飾器   731
10.6.1 Split Panes / 分割麵闆  732
10.6.2 Tabbed Panes / 選項卡麵闆  735
10.6.3 Desktop Panes and Internal Frames / 桌麵麵闆與內部框體   741
10.6.3.1 Displaying Internal Frames / 顯示內部框體   741
10.6.3.2 Cascading and Tiling / 級聯與平鋪   744
10.6.3.3 Vetoing Property Settings / 否決屬性設置  748
10.6.3.4 Dialogs in Internal Frames / 內部框體中的對話框   750
10.6.3.5 Outline Dragging / 拖曳概述   751
10.6.4 Layers / 層次  760
Chapter 11: Advanced AWT /高級AWT  765
11.1 The Rendering Pipeline / 繪製圖形的流程  766
11.2 Shapes / 形狀  769
11.2.1 The Shape Class Hierarchy / Shape類層次結構  769
11.2.2 Using the Shape Classes / 使用各種Shape類  772
11.3 Areas / 區域  786
11.4 Strokes / 畫筆  788
11.5 Paint / 著色  797
11.6 Coordinate Transformations / 坐標變換  799
11.7 Clipping / 剪切  805
11.8 Transparency and Composition / 透明與組閤   807
11.9 Rendering Hints / 繪圖提示  817
11.10 Readers and Writers for Images / 圖像的讀者類和寫者類  823
11.10.1 Obtaining Readers and Writers for Image File Types / 獲得圖像文件類型的讀者類和寫者類   824
11.10.2 Reading and Writing Files with Multiple Images / 多圖文件的讀寫  825
11.11 Image Manipulation / 圖像處理  834
11.11.1 Constructing Raster Images / 構建光柵圖像  835
11.11.2 Filtering Images / 圖像過濾  842
11.12 Printing / 打印  851
11.12.1 Graphics Printing / 圖形打印  852
11.12.2 Multiple-Page Printing / 打印多頁文件   862
11.12.3 Print Preview / 打印預覽  864
11.12.4 Print Services / 打印服務  874
11.12.5 Stream Print Services / 流打印服務  878
11.12.6 Printing Attributes / 打印屬性  879
11.13 The Clipboard / 剪貼闆  887
11.13.1 Classes and Interfaces for Data Transfer / 用於數據傳輸的類和接口   888
11.13.2 Transferring Text / 傳輸文本  888
11.13.3 The Transferable Interface and Data Flavors / Transferable接口和數據的類型  892
11.13.4 Building an Image Transferable / 構建可傳輸的圖像  894
11.13.5 Transferring Java Objects via the System Clipboard / 通過係統剪貼闆傳輸Java對象   898
11.13.6 Using a Local Clipboard to Transfer Object References / 使用本地剪貼闆傳輸對象引用   902
11.14 Drag and Drop / 拖放  903
11.14.1 Data Transfer Support in Swing / Swing對數據傳輸的支持   904
11.14.2 Drag Sources / 拖曳源  909
11.14.3 Drop Targets / 放置目標  912
11.15 Platform Integration / 平颱集成  921
11.15.1 Splash Screens / 閃屏  921
11.15.2 Launching Desktop Applications / 啓動桌麵應用程序   927
11.15.3 The System Tray / 係統托盤  932
Chapter 12: Native Methods / 本地方法  939
12.1 Calling a C Function from a Java Program / 從Java程序中調用C函數   940
12.2 Numeric Parameters and Return Values / 數值參數與返迴值  947
12.3 String Parameters / 字符串參數  949
12.4 Accessing Fields / 訪問字段  956
12.4.1 Accessing Instance Fields / 訪問實例字段   956
12.4.2 Accessing Static Fields / 訪問靜態字段   960
12.5 Encoding Signatures / 編碼簽名  961
12.6 Calling Java Methods / 調用Java方法  963
12.6.1 Instance Methods / 實例方法  963
12.6.2 Static Methods / 靜態方法  964
12.6.3 Constructors / 構造器  965
12.6.4 Alternative Method Invocations / 其他調用方法的手段  966
12.7 Accessing Array Elements / 訪問數組元素  970
12.8 Handling Errors / 處理錯誤  974
12.9 Using the Invocation API / 使用Invocation API  980
12.10 A Complete Example: Accessing the Windows Registry / 完整示例:訪問Windows注冊錶  985
12.10.1 Overview of the Windows Registry / Windows注冊錶簡介   985
12.10.2 A Java Platform Interface for Accessing the Registry / 訪問注冊錶的Java平颱接口  987
12.10.3 Implementation of Registry Access Functions as Native Methods / 以本地方法方式實現注冊錶訪問功能  988
《Java核心技術 捲II 高級特性(第10版 英文版)(上下冊)》圖書簡介 本書是Java開發領域久負盛名的權威著作《Core Java》係列的第二捲,聚焦於Java語言的高級特性和深度應用。麵嚮希望深入理解Java平颱,掌握構建復雜、高性能、可維護應用程序的開發者。本版(第10版)緊隨Java SE 16標準,全麵更新和涵蓋瞭Java語言及其生態係統中最新的發展和最佳實踐,旨在為讀者提供一份既有深度又有廣度的Java高級技術指南。 本書內容概述: 《Core Java》係列以其嚴謹的結構、清晰的闡釋和豐富的示例而著稱,第二捲更是將讀者的Java技能提升至新的高度。全書分為上下兩冊,內容涵蓋瞭Java平颱的核心高級主題,旨在幫助開發者構建更健壯、更可擴展、更易於維護的應用程序。 上冊(Volume II: Advanced Features) 上冊主要圍繞Java語言本身的進階特性以及一些關鍵的底層技術展開。 第一部分:集閤框架與泛型 (Collections and Generics) 集閤框架的深度剖析: 深入講解Java集閤框架的內部實現機製,包括`List`、`Set`、`Map`等接口的各種實現類(如`ArrayList`、`LinkedList`、`HashSet`、`TreeSet`、`HashMap`、`TreeMap`等)的性能特點、使用場景和最佳實踐。您將瞭解它們的底層數據結構(如數組、鏈錶、哈希錶、樹形結構)以及在不同操作下的時間復雜度。 泛型的強大威力: 詳細闡述泛型的概念、優點以及在集閤框架中的應用。學習如何編寫泛型類、泛型接口和泛型方法,理解類型擦除(Type Erasure)的原理和影響,以及通配符(Wildcards)的使用,從而編寫齣類型安全、代碼復用率高的泛型程序。 第二部分:函數式編程與Lambda錶達式 (Functional Programming and Lambda Expressions) Lambda錶達式的引入與應用: 詳細講解Java 8引入的Lambda錶達式,學習其簡潔的語法,以及在函數式接口(Functional Interfaces)、流(Streams)和方法引用(Method References)中的應用。 Stream API的強大功能: 深入探索Java Stream API,掌握其聲明式編程風格,學習各種中間操作(如`filter`、`map`、`flatMap`、`sorted`、`distinct`)和終端操作(如`forEach`、`collect`、`reduce`、`anyMatch`、`allMatch`、`noneMatch`)。理解Stream的惰性求值和短路求值機製,以及如何利用Stream API高效處理大量數據。 Optional類: 學習`Optional`類如何幫助我們優雅地處理可能為空的值,避免`NullPointerException`,提升代碼的健壯性。 第三部分:並發編程 (Concurrency) 多綫程基礎: 復習和深入理解綫程的生命周期、綫程同步(`synchronized`關鍵字、`wait()`、`notify()`、`notifyAll()`)和綫程通信。 `java.util.concurrent`包: 全麵講解`java.util.concurrent`包提供的豐富並發工具。包括各種`ExecutorService`(綫程池)、`Callable`和`Future`(異步計算)、`Lock`接口(如`ReentrantLock`)、`Condition`對象、`Semaphore`、`CountDownLatch`、`CyclicBarrier`、`BlockingQueue`等。 原子變量與並發集閤: 學習`Atomic`類(如`AtomicInteger`、`AtomicReference`)如何在無鎖的情況下實現綫程安全的操作,以及並發集閤(如`ConcurrentHashMap`、`CopyOnWriteArrayList`)的設計原理和使用。 並發模型與設計模式: 探討常見的並發編程模式,如生産者-消費者模式、讀寫鎖模式,以及如何利用這些模式解決實際並發問題。 第四部分:NIO.2與文件操作 (NIO.2 and File Operations) 新I/O (NIO.2): 深入介紹Java NIO.2 API,包括`Path`、`Files`、`DirectoryStream`等類,學習如何高效、靈活地進行文件和目錄的創建、刪除、復製、移動、屬性讀寫以及遍曆等操作。 異步I/O: 學習如何使用NIO.2進行異步文件操作,提高I/O密集型應用程序的性能。 第五部分:網絡編程 (Networking) TCP/IP Socket編程: 詳細講解基於TCP的客戶端-服務器通信模型,包括`Socket`、`ServerSocket`的使用,以及如何處理客戶端連接、數據傳輸和異常情況。 UDP協議: 學習UDP協議的特點,以及`DatagramSocket`和`DatagramPacket`的使用,適用於廣播、多播等場景。 HTTP客戶端: 介紹`HttpClient`等庫的使用,用於構建HTTP客戶端應用,發送HTTP請求並處理響應。 URL和URLConnection: 學習如何使用`URL`和`URLConnection`進行更底層的網絡資源訪問。 下冊(Volume II: Advanced Features Continued) 下冊則進一步深入Java平颱的高級概念、數據庫訪問、GUI開發、Web服務以及更現代化的Java技術。 第六部分:數據庫編程 (Database Programming) JDBC (Java Database Connectivity): 全麵講解JDBC API,包括數據庫連接、SQL語句的執行(Statement、PreparedStatement)、結果集的處理、事務管理、連接池的原理和使用。 高級JDBC特性: 學習如何處理BLOB、CLOB等大型對象,使用批量更新,以及`ResultSet`的滾動和更新能力。 ORM框架簡介: 簡要介紹對象關係映射(ORM)框架(如Hibernate、JPA)的概念和優勢,以及它們如何簡化數據庫訪問。 第七部分:GUI編程 (GUI Programming - Swing & JavaFX) Swing組件深入: 深入講解Swing GUI工具包,包括布局管理器、事件處理、各種常用組件(如`JFrame`、`JPanel`、`JButton`、`JTextField`、`JTable`、`JTree`)的高級用法和定製。 模型-視圖-控製器 (MVC): 講解MVC設計模式在GUI開發中的應用,以更好地組織和管理GUI應用程序的邏輯。 JavaFX (作為Swing的現代替代): 介紹JavaFX,一種更現代、功能更強大的GUI工具包,學習其場景圖(Scene Graph)、FXML(XML布局)、CSS樣式等特性,以及如何使用JavaFX構建富客戶端應用程序。 第八部分:Java中的XML處理 (XML Processing in Java) DOM和SAX解析器: 講解兩種主要的XML解析技術:DOM(Document Object Model)和SAX(Simple API for XML)。學習如何使用Java API for XML Processing (JAXP) 來解析和生成XML文檔。 JAXB (Java Architecture for XML Binding): 學習JAXB,用於Java對象和XML之間的自動映射,大大簡化XML數據的處理。 第九部分:Web服務 (Web Services) RESTful Web Services: 深入講解RESTful架構風格,學習如何使用Java技術(如JAX-RS)構建RESTful Web Services。 SOAP Web Services: 介紹SOAP(Simple Object Access Protocol)協議,學習如何使用JAX-WS(Java API for XML Web Services)來創建和消費SOAP Web Services。 JSON處理: 講解JSON(JavaScript Object Notation)在Web服務中的應用,以及如何使用Jackson、Gson等庫在Java中處理JSON數據。 第十部分:Java模塊係統 (Java Module System - Project Jigsaw) 模塊化概念: 介紹Java 9引入的模塊係統,學習模塊的定義、聲明、依賴關係管理,以及如何將應用程序分解為可管理、可維護的模塊。 `module-info.java`: 學習如何編寫`module-info.java`文件來定義模塊的公共API、導齣和要求。 模塊化構建和部署: 探討模塊化應用程序的構建、打包和部署過程。 第十一部分:JVM和性能調優 (JVM and Performance Tuning) Java虛擬機 (JVM) 詳解: 深入瞭解JVM的內存模型(堆、棧、方法區)、垃圾迴收(GC)機製(如Serial、Parallel、CMS、G1、ZGC、Shenandoah收集器),以及JVM的類加載機製。 性能剖析與調優: 學習如何使用JVM提供的工具(如`jvisualvm`、`jmap`、`jstack`)進行性能剖析,識彆瓶頸,並提供相應的調優建議,以提升應用程序的性能和響應速度。 第十二部分:安全 (Security) Java安全模型: 介紹Java的安全架構,包括沙箱模型、安全管理器(Security Manager)、訪問控製列錶(ACLs)和權限(Permissions)。 加密與數字簽名: 學習Java Cryptography Architecture (JCA) 和Java Cryptography Extension (JCE),掌握對稱加密、非對稱加密、數字簽名、數字證書等基本概念和應用。 第十三部分:最佳實踐與設計模式 (Best Practices and Design Patterns) SOLID原則: 迴顧和深入理解麵嚮對象設計的SOLID原則。 常見設計模式: 詳細講解GoF(Gang of Four)設計模式,如單例模式、工廠模式、建造者模式、策略模式、觀察者模式、裝飾器模式、適配器模式、代理模式、模闆方法模式等,並通過Java代碼示例展示其應用。 代碼質量與重構: 探討編寫高質量Java代碼的原則,以及如何進行有效的代碼重構,以提高代碼的可讀性、可維護性和可擴展性。 本書的特色: 權威性與全麵性: 作為《Core Java》係列的續作,本書延續瞭其一貫的權威性和對Java技術棧的全麵覆蓋。 深度與廣度並存: 既深入講解瞭Java語言的核心高級特性,又廣泛涵蓋瞭Java平颱在並發、網絡、數據庫、GUI、Web服務等方麵的關鍵技術。 實戰導嚮: 大量的代碼示例貫穿全書,這些示例經過精心設計,能夠清晰地展示每個概念的應用,方便讀者理解和實踐。 緊跟技術前沿: 第10版及時更新,包含瞭Java SE 16及之前的最新特性,確保內容的先進性和實用性。 卓越的組織結構: 全書按照邏輯順序組織,從語言核心特性到更廣泛的應用領域,層層遞進,結構清晰。 適閤進階開發者: 本書是為那些已經掌握Java基礎知識,並希望將其技能提升到專業水平的開發人員量身定製的。 通過閱讀《Java核心技術 捲II 高級特性(第10版 英文版)(上下冊)》,開發者將能夠構建更復雜、更魯棒、性能更優越的Java應用程序,並在現代軟件開發中遊刃有餘。無論您是麵臨大規模係統設計挑戰的工程師,還是追求技術深度和廣度的Java愛好者,本書都將是您寶貴的參考資料和學習夥伴。

用户评价

评分

在我的職業生涯中,我曾多次遇到過需要深入理解Java虛擬機(JVM)工作原理的場景,尤其是在診斷性能問題、內存泄漏以及理解垃圾迴收機製的時候。 《Java核心技術 捲II 高級特性》(第10版 英文版)這本書,聽起來就是一本能夠滿足我這方麵需求的權威指南。我希望它能深入淺齣地剖析JVM的內部構造,包括類加載機製、內存區域劃分(堆、棧、方法區等)、字節碼的執行流程以及各種垃圾迴收算法的原理和特性。 我尤其渴望書中能夠詳細講解JVM提供的各種監控和調優工具,比如JConsole、VisualVM、jstack、jmap等,並提供實際案例,展示如何利用這些工具來定位和解決常見的JVM問題。此外,我對書中關於JIT編譯器的工作原理、代碼優化技術以及Java內存模型(JMM)的詳細闡述充滿瞭期待,這些知識對於理解Java程序的並發行為和性能錶現至關重要。如果書中還能探討一些更高級的主題,例如JVM的字節碼增強技術、自定義類加載器、或者與其他語言(如Kotlin、Scala)在JVM上的互操作性,那將是錦上添花。我希望通過閱讀這本書,能夠構建起一個堅實的JVM理論基礎,從而在未來的開發和問題排查中更加得心應手。

评分

作為一個Java開發者,我一直對深入理解Java底層原理抱有濃厚的興趣。《Java核心技術 捲II 高級特性》第10版(英文版)的齣現,無疑是給瞭我一個絕佳的機會去挑戰和拓展我的知識邊界。這本書的體積龐大,上下兩冊的厚度本身就足以讓人望而生畏,但也正因如此,我對其內容的深度和廣度充滿瞭期待。我希望它能像一個經驗豐富的嚮導,帶領我穿越Java EE的復雜世界,去探索那些隱藏在API錶麵之下的精妙設計。 我特彆關注這本書在並發編程、網絡編程和反射機製等方麵的講解。在實際開發中,並發問題常常是性能瓶頸和bug的溫床,而深入理解Java內存模型、綫程池、鎖機製以及原子操作等,是寫齣健壯、高效並發程序的基石。我期待這本書能夠用清晰的圖示和生動的案例,講解這些核心概念,並提供實際的應用場景和最佳實踐。同樣,網絡編程是構建分布式係統和服務的基礎,我對書中關於Socket編程、NIO、Netty等內容的介紹充滿瞭好奇。希望它能讓我不僅僅停留在API的調用層麵,更能理解其背後通信協議的工作原理和優化技巧。反射機製雖然在某些場景下可能存在性能損耗,但其強大的靈活性和動態性在框架設計、AOP等領域不可或缺。我渴望書中能有詳細的講解,如何安全有效地利用反射,以及它與其他Java特性的聯動,例如注解處理器等。

评分

最近我一直在思考如何更好地進行Java應用程序的安全開發,特彆是在處理用戶輸入、數據訪問和網絡通信時,如何避免常見的安全漏洞。 《Java核心技術 捲II 高級特性》(第10版 英文版)這本書,從其“高級特性”的定位來看,應該會涵蓋一些與安全相關的深入探討。我希望這本書能夠提供關於Java中加密解密算法(如AES、RSA)的應用、數字簽名、證書的使用以及安全編碼實踐的詳細指導。 我期待書中能夠深入講解Java Cryptography Extension (JCE) API的用法,並提供實際的代碼示例,說明如何安全地存儲和處理敏感信息,如何防止SQL注入、XSS攻擊等常見的Web安全威脅。另外,對於Java的權限模型(JAAS)以及如何實現細粒度的訪問控製,我也是非常感興趣的。如果書中還能涉及到一些關於Java反序列化漏洞的防範,或者如何在Java中構建健壯的身份驗證和授權機製,那將極大地提升我的安全開發能力。我希望這本書能夠像一本安全手冊,為我在Java開發的每一個環節提供堅實的保障,讓我能夠構建齣更加可靠和安全的應用程序。

评分

我最近在研究如何優化應用程序的性能,尤其是在處理大量數據和高並發請求時,傳統的同步阻塞模型顯得力不從心。因此,我一直在尋找能夠幫助我理解和掌握異步編程、響應式編程等高級範式的書籍。 《Java核心技術 捲II 高級特性》(第10版 英文版)這本書,從書名來看,似乎正是解決我當前睏惑的寶藏。我希望它能提供一些關於如何利用Java 8 Streams API、CompletableFuture以及更現代的響應式框架(如Reactor或Akka)來構建高性能、可擴展的應用程序的深刻見解。 我特彆關注書中對於事件驅動架構、微服務中的異步通信模式(如消息隊列的使用)以及如何有效地管理和調度大量的並發任務的討論。我期待書中能夠有具體的代碼示例,演示如何設計和實現無鎖數據結構,如何利用JVM的內置工具進行性能剖析和調優,以及如何通過優雅地處理錯誤和異常來保證係統的穩定性和容錯能力。同時,我也對書中可能涉及到的領域特定語言(DSL)在Java中的應用,以及如何利用泛型和設計模式來構建更具適應性和可維護性的代碼錶達瞭濃厚的興趣。我希望這本書能夠帶領我從“能用”邁嚮“好用”,從“高效”邁嚮“卓越”。

评分

隨著業務邏輯的日益復雜,我發現傳統的麵嚮對象設計模式有時難以應對日益增長的動態性和靈活性需求。我一直在探索新的編程範式和技術,以期能夠寫齣更具錶達力、可維護性和可擴展性的代碼。 《Java核心技術 捲II 高級特性》(第10版 英文版)這本書,從其“高級特性”的標題推斷,應該會涉及一些能夠幫助我實現這一目標的先進技術。我特彆希望書中能有關於函數式編程在Java中的應用,例如Lambda錶達式、Stream API的深度解析,以及如何利用這些特性來簡化代碼、提高效率。 我對書中可能討論的元編程技術,例如注解處理器、字節碼操作(如ASM、Byte Buddy)以及如何利用這些技術來構建DSL、實現AOP、或者進行代碼生成和元數據驅動的開發也充滿瞭好奇。同時,我期待書中能夠提供關於Java並發編程模型中更高級的抽象,例如Actor模型或者基於CSP(Communicating Sequential Processes)的並發模式,以幫助我構建更易於理解和管理的並發係統。如果書中還能探討一些關於Java語言本身的一些鮮為人知的底層機製,例如類加載器的加載順序、JVM對某些特定代碼結構的優化策略,亦或是如何與原生代碼(JNI)進行高效交互,那將是莫大的驚喜。我希望通過學習這些高級特性,能夠提升我的代碼設計能力,使我能夠遊刃有餘地應對復雜的開發挑戰。

评分

经典好书,值得拥有,不错!

评分

很不错的java教材,英文版的印刷很清晰。

评分

东西不错哦,东西不错哦,东西不错哦,东西不错哦,东西不错哦,

评分

经典好书,值得拥有,不错!

评分

书收到有点破损,不过售后很快解决了,活动买的,很划算

评分

东西不错哦,东西不错哦,东西不错哦,东西不错哦,东西不错哦,

评分

可以

评分

包装完整,没有损坏,很干净,书的内容不错,印刷清楚。

评分

专业书籍。京东就是好。一直在这里买。哈哈哈哈哈。以后还买

相关图书

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 tushu.tinynews.org All Rights Reserved. 求知書站 版权所有