本书中文简体字版由Pearson Education(培生教育出版集团)授权机械工业出版社在中华人民共和国境内(不包括中国台湾地区和中国香港、澳门特别行政区)独家出版发行。未经出版者书面许可,不得以任何方式抄袭、复制或节录本书中的任何部分。
本书封底贴有Pearson Education(培生教育出版集团)激光防伪标签,无标签者不得销售。
Java领域最有影响力和价值的著作之一,由拥有20多年教学与研究经验的博学Java技术专家撰写(获Jolt大奖),与《Java编程思想》齐名,10余年全球畅销不衰,广受好评。第9版根据Java SE 7更新,同时修正了第8版中的不足,系统讲解Java语言的核心概念、语法、重要特性和开发方法。本书覆盖Java技术的高级主题,包括流与文件、XML、网络、数据库编程、国际化等,详细描述了图形与GUI编程,还涉及安全、远程方法、注解处理、本地方法等。本书对Java技术的阐述到位,叙述方式深入浅出,并包含大量示例代码,能够帮助读者充分理解Java语言并灵活应用。
Java领域有影响力和价值的著作之一,与《Java编程思想》齐名,10余年全球畅销不衰,广受好评。
根据Java SE 7更新,、深入地讲解Java中所有高级特性和开发技巧,包含大量案例,实践性强。
Cay S. Horstmann
圣何塞州立大学计算机科学系教授、Java的倡导者,经常在开发人员会议上发表演讲。他是《Scala for the Impatient》(Addison-Wesley, 2012)的作者,并参与撰写了《Core JavaServerTM Faces,Third Edition》(Prentice Hall, 2010)。
Gary Cornell
已经教授程序设计专业课程20余年,并撰写了多部专著。他是Apress的创始人之一。他撰写的程序设计专业书籍十分畅销,曾荣获Jolt大奖,并获得Visual Basic Magazine的读者最喜爱作品大奖。
译者序
前言
第1章流与文件
1.1流
1.1.1读写字节
1.1.2完整的流家族
1.1.3组合流过滤器
1.2文本输入与输出
1.2.1如何写出文本输出
1.2.2如何读入文本输入
1.2.3以文本格式存储对象
1.2.4字符集
1.3读写二进制数据
1.4ZIP文档
1.5对象流与序列化
1.5.1理解对象序列化的文件格式
1.5.2修改默认的序列化机制
1.5.3序列化单例和类型安全的枚举
1.5.4版本管理
1.5.5为克隆使用序列化
1.6操作文件
1.6.1Path
1.6.2读写文件
1.6.3复制、移动和删除文件
1.6.4创建文件和目录
1.6.5获取文件信息
1.6.6迭代目录中的文件
1.6.7ZIP文件系统
1.7内存映射文件
1.7.1缓冲区数据结构
1.7.2文件加锁机制
1.8正则表达式
第2章XML
2.1XML概述
2.2解析XML文档
2.3验证XML文档
2.3.1文档类型定义
2.3.2XML Schema
2.3.3实用示例
2.4使用XPath来定位信息
2.5使用命名空间
2.6流机制解析器
2.6.1使用SAX解析器
2.6.2使用StAX解析器
2.7生成XML文档
2.7.1不带命名空间的文档
2.7.2带命名空间的文档
2.7.3写出文档
2.7.4示例:生成SVG文件
2.7.5使用StAX写XML文档
2.8XSL转换
第3章网络
3.1连接到服务器
3.1.1套接字超时
3.1.2因特网地址
3.2实现服务器
3.2.1为多个客户端服务
3.2.2半关闭
3.3可中断套接字
3.4获取Web数
3.4.1URL和URI
3.4.2使用URLConnection获取信息
3.4.3提交表单数据
3.5发送E-mail
第4章数据库编程
4.1JDBC的设计
4.1.1JDBC驱动程序类型
4.1.2JDBC的典型用法
4.2结构化查询语言
4.3JDBC配置
4.3.1数据库URL
4.3.2驱动程序JAR文件
4.3.3启动数据库
4.3.4注册驱动器类
4.3.5连接到数据库
4.4执行SQL语句
4.4.1管理连接、语句和结果集
4.4.2分析SQL异常
4.4.3组装数据库
4.5执行查询操作
4.5.1预备语句
4.5.2读写LOB
4.5.3SQL转义
4.5.4多结果集
4.5.5获取自动生成键
4.6可滚动和可更新的结果集
4.6.1可滚动的结果集
4.6.2可更新的结果集
4.7行集
4.7.1构建行集
4.7.2被缓存的行集
4.8元数据
4.9事务
4.9.1保存点
4.9.2批量更新
4.9.3高级SQL类型
4.10Web与企业应用中的连接管理
第5章国际化
5.1Locales
5.2数字格式
5.3日期和时间
5.4排序
5.4.1排序强度
5.4.2分解
5.5消息格式化
选择格式
5.6文本文件和字符集
源文件的字符编码
5.7资源包
5.7.1定位资源包
5.7.2属性文件
5.7.3包类
5.8一个完整的例子
第6章高级Swing
6.1列表
6.1.1JList构件
6.1.2列表模式
6.1.3插入和移除值
6.1.4值的绘制
6.2表格
6.2.1简单表格
6.2.2表格模型
6.2.3对行和列的操作
6.2.4单元格的绘制和编辑
6.3树
6.3.1简单的树
6.3.2节点枚举
6.3.3绘制节点
6.3.4监听树事件
6.3.5定制树模型
6.4文本构件
6.4.1文本构件中的修改跟踪
6.4.2格式化的输入框
6.4.3JSpinner构件
6.4.4用JEditorPane显示HTML
6.5进度指示器
6.5.1进度条
6.5.2进度监视器
6.5.3监视输入流的进度
6.6构件组织器和装饰器
6.6.1分割面板
6.6.2选项卡面板
6.6.3桌面面板和内部框体
6.6.4级联与平铺
6.6.5否决属性设置
第7章高级AWT
7.1绘图操作流程
7.2形状
7.3区域
7.4笔划
7.5着色
7.6坐标变换
7.7剪切
7.8透明与组合
7.9绘图提示
7.10图像的读取器和写入器
7.10.1获得图像文件类型的读取器和写入器
7.10.2读取和写入带有多个图像的文件
7.11图像处理
7.11.1构建光栅图像
7.11.2图像过滤
7.12打印
7.12.1图形打印
7.12.2打印多页文件
7.12.3打印预览
7.12.4打印服务程序
7.12.5流打印服务程序
7.12.6打印属性
7.13剪贴板
7.13.1用于数据传递的类和接口
7.13.2传递文本
7.13.3Transferable接口和数据风格
7.13.4构建一个可传递的图像
7.13.5通过系统剪贴板传递Java对象
7.13.6使用本地剪贴板来传递对象引用
7.14拖放操作
7.14.1Swing对数据传递的支持
7.14.2拖曳源
7.14.3放置目标
7.15平台集成
7.15.1闪屏
7.15.2启动桌面应用程序
7.15.3系统托盘
第8章JavaBean构件
8.1为何使用Bean
8.2编写Bean的过程
8.3使用Bean构造应用程序
8.3.1将Bean打包成JAR文件
8.3.2在开发环境中组合Bean
8.4Bean属性与事件的命名模式
8.5Bean属性的类型
8.5.1简单属性
8.5.2索引属性
8.5.3绑定属性
8.5.4约束属性
8.6BeanInfo类
8.7属性编辑器
8.8定制器
8.9JavaBean持久化
8.9.1JavaBean持久化可用于任何数据
8.9.2一个JavaBean持久化的完整示例
第9章安全
9.1类加载器
9.1.1类加载器的层次结构
9.1.2将类加载器作为命名空间
9.1.3编写你自己的类加载器
9.2字节码校验
9.3安全管理器与访问权限
9.3.1Java平台安全性
9.3.2安全策略文件
9.3.3定制权限
9.3.4实现权限类
9.4用户认证
9.5数字签名
9.5.1消息摘要
9.5.2消息签名
9.5.3校验签名
9.5.4认证问题
9.5.5证书签名
9.5.6证书请求
9.6代码签名
9.6.1JAR文件签名
9.6.2软件开发者证书
9.7加密
9.7.1对称密码
9.7.2密钥生成
9.7.3密码流
9.7.4公共密钥密码
第10章脚本、编译与注解处理
10.1Java平台的脚本
10.1.1获取脚本引擎
10.1.2脚本赋值与绑定
10.1.3重定向输入和输出
10.1.4调用脚本的函数和方法
10.1.5编译脚本
10.1.6一个示例:用脚本处理GUI事件
10.2编译器API
10.2.1编译便捷之法
10.2.2使用编译工具
10.2.3一个示例:动态Java代码生成
10.3使用注解
10.4注解语法
10.5标准注解
10.5.1用于编译的注解
10.5.2用于管理资源的注解
10.5.3元注解
10.6源码级注解处理
10.7字节码工程
第11章分布式对象
11.1客户与服务器的角色
11.2远程方法调用
11.3RMI编程模型
11.3.1接口与实现
11.3.2RMI注册表
11.3.3部署程序
11.3.4记录RMI活动的日志
11.4远程方法中的参数和返回值
11.4.1传递远程对象
11.4.2传递非远程对象
11.4.3动态类加载
11.4.4具有多重接口的远程引用
11.4.5远程对象与equals、hashCode和clone方法
11.5远程对象激活
第12章本地方法
12.1从Java程序中调用C函数
12.2数值参数与返回值
12.3字符串参数
12.4访问域
12.4.1访问实例域
12.4.2访问静态域
12.5编码签名
12.6调用Java方法
12.6.1实例方法
12.6.2静态方法
12.6.3构造器
12.6.4替代方法调用
12.7访问数组元素
12.8错误处理
12.9使用调用API
12.10完整的示例:访问Windows注册表
12.10.1Windows注册表概述
12.10.2访问注册表的Java平台接口
12.10.3以本地方法方式实现注册表访问函数
帮同事买的学习用书,他说很好很实用,在项目里借鉴了很多书里的内容
还行,内容上还可以,作为查找参考的书籍。有点贵。
书脚褶皱了 物流感觉需要在完善一下,花钱购买的书 出现这种情况很影响阅读的心情
本书性价比很高、 印刷很正 纸质好 排版不错 包装也好
书的质量很好,也很快,涵盖的知识点很全。要有c++基础。
包装太烂,书都有点破损了,虽然不影响观看,都露出包装外了(就一层当当的塑料袋子)
这书是不是盗版的~~~感觉30块一本,字体大小不一,代码字体偏小~~
封面有些破损,快递很快,只是派发了3天,纸质好像没有那么好,很薄。先看看吧,别人推荐的
没注意这是第九版,卷一我买的是第十版。但经典书嘛,就再多买一本吧。
经典好书,I出第十版了,II还是九,收藏了慢慢看。
虽然还没来得及看,但是是因为买了第一卷看了之后才买的第二卷
正品然后其实是超级实用的书,学代码最重要的是多练
就是快递公司不咋地,中转慢的要命,不过快递员人很好,书不错。
无需多说。都已经再版九次了。学习java的经典图书。
比较经典的书~很系统的讲解,是JAVA学习的参考书。
Java核心技术的高级部分,与基础部分一起,完善讲解了java的技术体系
收到啦~很快很喜欢~谢谢啦~适合现在阶段的自己
22号下的单,28号才收到,就用一层塑料包着,导致书刚拿到手就有破损,low爆了。
包装不错 每一本都单独封了塑料包装 没有破损 纸张质量也还不错 没有明显的印刷质量
本书对于刚入门的同学来说相当有难度,推荐高级人员查看
终于凑够一二卷了。完全可以作为工具参考书,查阅提高用。厚的要命!
核心技术和编程思想是入门最佳经典没有之一
很喜欢的Java编程的书籍 写的不错 赞一个
这类书主要是用来对于java已经有一定了解后,再来反复杜加深个人理解的,如果是初学者还是建议先看视频,多做几个例子,再来看书
第一次在当当买书,本身也是java开发的。总体来看,这本书实用性很强,适合有一定java基础,然后又想提升的朋友,值得推荐。
学习Java的经典书籍,不过暂时没有时间看
粗略的翻阅了一下,跟C++非常相似,有C++基础的或者C#基础的,相信能轻松上手。我是为了转型安卓移动系统而学。。推荐其他有心想要转战安卓领域的爱好者们,不熟悉java不要贸然去看安卓程序设计方面的书,应该先把基础打牢再循序渐进的往高处走。