本书是经典图书《Java核心技术 卷II:不错特性》的zui新版。这一版针对Java SE 8平台进行了全面更新,以反映Java SE 8的特性。
书中全面覆盖Java技术的不错主题,包括Java SE 8流库,输入与输出,XML,网络,数据库编程,日期与时间API,靠前化,脚本、编译与注解处理,安全,不错Swing,不错AWT,以及本地方法等内容。本书对Java技术的阐述精que到位,叙述方式深入浅出,并包含大量程序示例,让读者充分理解Java语言以及Java类库的相关不错特性。
网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | Java核心技术(卷Ⅱ高级特性上下第10版英文版) |
分类 | |
作者 | (美)凯·S.霍斯特曼 |
出版社 | 人民邮电出版社 |
下载 | |
简介 | 内容推荐 本书是经典图书《Java核心技术 卷II:不错特性》的zui新版。这一版针对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 |
随便看 |
|
霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。