基本信息
- 原书名:Core Java, Vol. 2: Advanced Features, 8th Edition
- 原出版社: Prentice Hall PTR
- 作者: (美)Cay S. Horstmann Gary Cornell
- 出版社:人民邮电出版社
- ISBN:9787115210586
- 上架时间:2013-5-9
- 出版日期:2009 年9月
- 开本:16开
- 页码:1032
- 版次:1-1
- 所属分类:计算机 > 软件与程序设计 > JAVA(J#) > Java
编辑推荐
全面解读程序员使用Java语言进行软件开发时需要了解的高级主题
定位于面向将Java技术运用于实际项目的编程人员
内容简介
作译者
Gary Cornell编写编程技术方面的书籍并教授相关知识已有20多年,是Apress的创始人之一。他编写了许多有关编程技术方面的畅销书,曾获Jolt大奖,还赢得了Visual Basic Magazine的Readers Choice大奖。...
目录
Streams 2
Reading and Writing Bytes 2
The Complete Stream Zoo 4
Combining Stream Filters 8
Text Input and Output 11
How to Write Text Output 12
How to Read Text Input 14
Saving Objects in Text Format 14
Character Sets 19
Reading and Writing Binary Data 23
Random-Access Files 26
ZIP Archives 32
Object Streams and Serialization 39
Understanding the Object Serialization File Format 46
Modifying the Default Serialization Mechanism 51
Serializing Singletons and Typesafe Enumerations 53
Versioning 54
Using Serialization for Cloning 56
File Management 59
前言
本书按照Java SE 6对上一版本进行了完全更新。卷I主要介绍了Java语言的一些关键特性,而本卷主要介绍程序员进行专业软件开发时需要了解的高级主题。因此,与卷I以及本书以前的版本一样,我们仍将其定位于面对将Java技术运用于实际项目的编程人员。.
请注意,如果你是经验丰富的程序员,能够灵活运用内部类和泛型等高级语言特性,就没有必要在阅读完卷I的基础上再从本卷获益。不过,本卷会根据适当情况去参考引用卷I的有关内容(当然,我们希望你或者已经购买了卷I),你也可以在任何一本综合介绍Java平台的书中获取所需的背景知识。
任何一本书都难免会存在一些错误和不妥。我们非常希望读者将在本书中找到的错误和不妥通报给我们。当然,我们更希望只收到一次出现这些问题的报告。为此,我们创建了一个FAQ、bug修正以及应急方案的网站http://horstmann.com/corejava。可以在bug报告页面(该页面的目的是鼓励读者阅读以前的报告)的末尾处添加bug报告,以便发布bug和问题、给出建议,从而改进本书的未来版本。
本书内容
本书中的章节大部分是相互独立的。你可以研究任何感兴趣的主题,也可以按照任意顺序阅读这些章节。
第1章介绍输入输出处理。在Java中,所有I/O都是通过所谓的“流”来处理的。流使你可以按照统一的方式来处理各种数据源之间的通信,如文件、网络连接或内存块。本章详细介绍了各种读入器和写出器类,它们使得对Unicode的处理更容易;还介绍了在使用对象序列化机制从而使保存和加载对象变得容易而方便时,其背后的原理是什么。最后,讨论了支持高效文件操作的“新I/O”类(它们曾作为最新内容添加到Java SE 1.4中)和正则表达式类库。
第2章介绍XML,包括如何解析XML文件,如何生成XML以及如何使用XSL转换。本章运用一个示例,展示了在XML中如何指定Swing格式的布局。本书对这一章进行了更新和修正,将XPath API纳入其中,这使得“在XML的大海里捞针”变得容易。
第3章介绍网络API。Java使复杂的网络编程工作变得很容易实现。本章介绍如何创建到服务器的网络连接,如何实现你自己的服务器,以及如何创建HTTP连接。
第4章介绍数据库编程,重点介绍JDBC,即Java数据库连接API,这是用于将Java程序与关系数据库进行连接的API。本章介绍如何通过使用JDBC API的核心子集,编写能够处理现实中数据库日常事务的实用程序(如果完整介绍JDBC API的功能,可能需要编写一本像本书一样篇幅的书)。本章最后简要介绍层次数据库,探讨了JNCI(Java命名及目录接口)和LDAP(轻量级目录访问协议)。
第5章讨论了我们认为其重要性将会不断提高的特性——国际化。Java编程语言是在一开始就被设计为可以处理Unicode的少数几种语言之一,不过Java平台的国际化支持则更进一步。因此,可以对Java应用程序进行国际化,使你的程序不仅可以跨平台,而且还可以跨越国界。例如,本章会介绍如何编写一个退休金计算器的小程序,可以根据本地浏览器的情况使用英语、德语或汉语对其进行浏览。
第6章涵盖了卷I中没有涉及的所有Swing知识,尤其是重要而且复杂的树型构件和表格构件。本章还介绍了编辑面板的基本用法、“多文档”界面的Java实现、在多线程程序中用到的进度指示器,以及诸如闪屏和支持系统托盘这样的“桌面继承特性”。本章着重介绍在实际编程中可能遇到的最有用的构件,因为对Swing类库进行全面介绍可能需要用几卷书的篇幅,并且只有专业人士对此感兴趣。
第7章介绍可以用来创建实际的图形和特殊的效果的Java 2D API。本章还介绍了抽象窗口操作工具包(AWT)的一些高级特性,这部分在卷I中也应该专门介绍,这些技术应该成为每一个编程人员工具包的一部分。这些特性包括打印以及用于剪切/粘贴和拖/放的API。..
第8章介绍了用于Java平台的构件API——JavaBean。本章介绍如何编写自己的Bean,以及其他编程人员如何在集成构建环境中对它们进行操作。然后介绍如何使用JavaBean的持久性,以适用于长期存储(与对象序列化不同)的格式来存储自己数据。
第9章继续介绍Java安全模式。Java平台在一开始就是基于安全而设计的,本章深入介绍这种设计是如何实现的,还介绍如何编写用于特殊目的应用的类加载器以及安全管理器。然后介绍允许使用消息、代码签名、授权以及认证和加密等重要特性的安全API。并通过使用AES和RSA加密算法的示例进行总结。
第10章介绍分布式对象。本章详细介绍RMI(远程方法调用)。这个API可以让你运行分布在多台机器上的Java对象。然后简要介绍Web Service,并给出了一个实现Java程序与Amazon Web Service之间通信的示例。
第11章介绍3种处理代码的技术。脚本机制和编译器API是在Java SE 6中引入的,它们允许程序调用使用JavaScript或Groovy之类的脚本语言编写的代码,并允许程序编译Java代码。可以使用注释向Java程序中添加任意信息(有时称为元数据)。本章介绍注释处理器如何在源码级别或者在类文件级别上收集这些注释,以及如何运用这些注释来影响运行时的类行为。只有在工具的支持下注释才有用,因此,希望本章内容有助于你根据需要选择有用的注释处理工具。
第12章介绍本地化方法,它可以让你调用为微软Windows API这样的特殊机制而编写的各种调用方法。显然,这种特性是有争议的:如果使用本地化方法,那么Java平台的跨平台本质将会随之消失。尽管如此,每个为特定平台编写Java应用程序的严谨的程序员仍需了解这些技术。有时,为了目标平台而与不被Java平台支持的设备或服务进行交互时,可能需要借助于操作系统API。本章通过介绍如何从某个Java程序访问Windows注册表API来阐明这一点。
本书所有章节都按照Java的最新版本进行了修订,过时的内容都已删除,还对Java SE6的新API进行了详细介绍。
阅读须知