您好,欢迎光临有路网!
深入理解Java7:核心技术与最佳实践(资深专家撰写,深入解析Java7所有重要更新及Java平台核心技术)(预计5月28日到货)
QQ咨询:
有路璐璐:

深入理解Java7:核心技术与最佳实践(资深专家撰写,深入解析Java7所有重要更新及Java平台核心技术)(预计5月28日到货)

  • 作者:成富
  • 出版社:机械工业出版社
  • ISBN:9787111380399
  • 出版日期:2012年05月01日
  • 页数:450
  • 定价:¥79.00
  • 分享领佣金
    手机购买
    城市
    店铺名称
    店主联系方式
    店铺售价
    库存
    店铺得分/总交易量
    发布时间
    操作

    新书比价

    网站名称
    书名
    售价
    优惠
    操作

    图书详情

    • 出版社
    • ISBN
      9787111380399
    • 作者
    • 页数
      450
    • 出版时间
      2012年05月01日
    • 定价
      ¥79.00
    • 所属分类
    内容提要
    本书是学习Java 7新功能和新特性以及深入理解Java核心技术的*佳选择之一。经过近6年的等待,Java迎来了它的又一个历史性的版本—Java 7。Java 7在提高开发人员的生产效率、平台性能和模块方向上又迈进了一步,变得更加强大和灵活。本书不仅对Java 7的所有重要更新进行了全面的解读,而且还对Java平台的核心技术的底层实现进行了深入探讨,包含大量*佳实践。
    全书的主要内容可分为三大部分:**部分是1~6章,全面阐释Java 7在语法、JVM、类库和API等方面的所有重要新功能和新特性,掌握这部分内容有助于大幅度提升编码效率和提高代码质量;第二部分是7~13章,对JVM、Java源代码和字节代码操作、类加载器、对象生命周期、多线程、并发编程、泛型、**等Java平台的核心技术进行了深入解析,掌握这部分内容有助于深入理解Java的底层原理;第三部分为第14章,是对Java 8的展望,简要介绍了Java 8中将要增加的新特性。
    文章节选
    第1章Java 7语法新特性
    前面介绍Java所面临的挑战时就提到了Java语言的语法过于复杂的问题。与其他动态语言相比,利用Java语言所编写出来的代码不够简洁和直接。Java语言一直在不断改进自身的语法,以满足开发人员的需求。*大的改动发生在J2SE 5.0版本中。泛型、增强的for循环、基本类型的自动装箱和拆箱机制、枚举类型、参数长度可变的方法、静态引入(import static)和注解等都是在这个版本中添加的。随后的Java SE 6并没有增加新的语法特性,而Java SE 7又增加了一些语法新特性。本章将会着重介绍这些新特性。
    OpenJDK中的Coin项目(Project Coin)的目的就是为了收集对Java语言的语法进行增强的建议。*终有6个语法新特性被加入到了Java 7中。这些语法新特性涉及switch语句、整数字面量、异常处理、泛型、资源处理和参数长度可变方法的调用等。
    下面将对新特性进行具体的介绍。每节是独立的,读者可以有选择地阅读自己感兴趣的特性的相关章节。需要注意的是,Java 7中与泛型相关的语法新特性将在专门介绍泛型的第12章中介绍。
    1.1Coin项目介绍
    在介绍具体的新特性之前,有必要介绍一下Coin项目。OpenJDK中的Coin项目的目的是维护对Java语言所做的语法增强。在Coin项目开始之初,曾经广泛地向社区征求提议。在短短的一个月时间内就收到了近70条提议。*后有9条提议被列入考虑之中。在这9条提议中,有6条成为Java 7的一部分,剩下的2条提议会在Java 8中重新考虑,还有1条提议被移到其他项目中实现。这6条被接纳的提议除了本章会介绍的在switch语句中使用字符串、数值字面量的改进、优化的异常处理、try-with-resources语句和优化变长参数的方法调用之外,还包括第12章中会介绍的简化泛型类创建的“<>”操作符。在Java 8中考虑的2条提议则分别是集合类字面量和为List和Map提供类似数组的按序号的访问方式。
    和其他对Java平台所做的修改一样,Coin项目所建议的修改也需要通过JCP来完成。这些改动以JSR 334(Small Enhancements to the JavaTM Programming Language)的形式提交到JCP。
    1.2在switch语句中使用字符串
    对于switch语句,开发人员应该都不陌生。大部分编程语言中都有类似的语法结构,用来根据某个表达式的值选择要执行的语句块。对于switch语句中的条件表达式类型,不同编程语言所提供的支持是不一样的。对于Java语言来说,在Java 7之前,switch语句中的条件表达式的类型只能是与整数类型兼容的类型,包括基本类型char、byte、short和int,与这些基本类型对应的封装类Character、Byte、Short和Integer,还有枚举类型。这样的限制降低了语言的灵活性,使开发人员在需要根据其他类型的表达式来进行条件选择时,不得不增加额外的代码来绕过这个限制。为此,Java 7放宽了这个限制,额外增加了一种可以在switch语句中使用的表达式类型,那就是很常见的字符串,即String类型。
    目录
    前 言
    Java的挑战与展望
    第1章 Java 7语法新特性 / 1
    1.1 Coin项目介绍 / 1
    1.2 在switch语句中使用字符串 / 2
    1.2.1 基本用法 / 2
    1.2.2 实现原理 / 3
    1.2.3 枚举类型 / 5
    1.3 数值字面量的改进 / 5
    1.3.1 二进制整数字面量 / 6
    1.3.2 在数值字面量中使用下划线 / 6
    1.4 优化的异常处理 / 7
    1.4.1 异常的基础知识 / 7
    1.4.2 创建自己的异常 / 8
    1.4.3 处理异常 / 12
    1.4.4 Java 7的异常处理新特性 / 14
    1.5 try-with-resources语句 / 17
    1.6 优化变长参数的方法调用 / 19
    1.7 小结 / 21
    第2章 Java语言的动态性 / 22
    2.1 脚本语言支持API / 22
    2.1.1 脚本引擎 / 23
    2.1.2 语言绑定 / 24
    2.1.3 脚本执行上下文 / 25
    2.1.4 脚本的编译 / 27
    2.1.5 方法调用 / 28
    2.1.6 使用案例 / 29
    2.2 反射API / 31
    2.2.1 获取构造方法 / 32
    2.2.2 获取域 / 34
    2.2.3 获取方法 / 34
    2.2.4 操作数组 / 35
    2.2.5 访问权限与异常处理 / 36
    2.3 动态代理 / 36
    2.3.1 基本使用方式 / 36
    2.3.2 使用案例 / 40
    2.4 动态语言支持 / 42
    2.4.1 Java语言与Java虚拟机 / 43
    2.4.2 方法句柄 / 44
    2.4.3 invokedynamic指令 / 66
    2.5 小结 / 73
    第3章 Java I/O / 75
    3.1 流 / 75
    3.1.1 基本输入流 / 76
    3.1.2 基本输出流 / 77
    3.1.3 输入流的复用 / 78
    3.1.4 过滤输入输出流 / 80
    3.1.5 其他输入输出流 / 81
    3.1.6 字符流 / 81
    3.2 缓冲区 / 82
    3.2.1 基本用法 / 83
    3.2.2 字节缓冲区 / 84
    3.2.3 缓冲区视图 / 86
    3.3 通道 / 87
    3.3.1 文件通道 / 88
    3.3.2 套接字通道 / 93
    3.4 NIO.2 / 98
    3.4.1 文件系统访问 / 98
    3.4.2 zip/jar文件系统 / 106
    3.4.3 异步I/O通道 / 108
    3.4.4 套接字通道绑定与配置 / 111
    3.4.5 IP组播通道 / 111
    3.5 使用案例 / 113
    3.6 小结 / 115
    第4章 国际化与本地化 / 117
    4.1 国际化概述 / 117
    4.2 Unicode / 118
    4.2.1 Unicode编码格式 / 119
    4.2.2 其他字符集 / 124
    4.2.3 Java与Unicode / 124
    4.3 Java中的编码实践 / 125
    4.3.1 Java NIO中的编码器和解码器 / 126
    4.3.2 乱码问题详解 / 130
    4.4 区域设置 / 133
    4.4.1 IETF BCP 47 / 134
    4.4.2 资源包 / 135
    4.4.3 日期和时间 / 143
    4.4.4 数字和货币 / 144
    4.4.5 消息文本 / 146
    4.4.6 默认区域设置的类别 / 148
    4.4.7 字符串比较 / 148
    4.5 国际化与本地化基本实践 / 149
    4.6 小结 / 152
    第5章 图形用户界面 / 153
    5.1 Java图形用户界面概述 / 153
    5.2 AWT / 156
    5.2.1 重要组件类 / 156
    5.2.2 任意形状的窗口 / 157
    5.2.3 半透明窗口 / 158
    5.2.4 组件混合 / 159
    5.3 Swing / 159
    5.3.1 重要组件类 / 159
    5.3.2 JLayer组件和LayerUI类 / 161
    5.4 事件处理与线程**性 / 163
    5.4.1 事件处理 / 163
    5.4.2 事件分发线程 / 165
    5.4.3 SwingWorker类 / 167
    5.4.4 SecondaryLoop接口 / 169
    5.5 界面绘制 / 170
    5.5.1 AWT中的界面绘制 / 170
    5.5.2 Swing中的绘制 / 171
    5.6 可插拔式外观样式 / 172
    5.7 JavaFX / 175
    5.7.1 场景图 / 175
    5.7.2 变换 / 177
    5.7.3 动画效果 / 177
    5.7.4 FXML / 179
    5.7.5 CSS外观描述 / 181
    5.7.6 Web引擎与网页显示 / 182
    5.8 使用案例 / 183
    5.9 小结 / 185
    第6章 Java 7其他重要更新 / 186
    6.1 关系数据库访问 / 186
    6.1.1 使用try-with-resources语句 / 186
    6.1.2 数据库查询的默认模式 / 187
    6.1.3 数据库连接超时时间与终止 / 188
    6.1.4 语句自动关闭 / 189
    6.1.5 RowSet实现提供者 / 190
    6.2 java.lang包的更新 / 191
    6.2.1 基本类型的包装类 / 191
    6.2.2 进程使用 / 192
    6.2.3 Thread类的更新 / 194
    6.3 Java实用工具类 / 195
    6.3.1 对象操作 / 195
    6.3.2 正则表达式 / 197
    6.3.3 压缩文件处理 / 200
    6.4 JavaBeans组件 / 201
    6.4.1 获取组件信息 / 201
    6.4.2 执行语句和表达式 / 202
    6.4.3 持久化 / 202
    6.5 小结 / 203
    第7章 Java虚拟机 / 205
    7.1 虚拟机基本概念 / 205
    7.2 内存管理 / 206
    7.3 引用类型 / 208
    7.3.1 强引用 / 209
    7.3.2 引用类型基本概念 / 211
    7.3.3 软引用 / 213
    7.3.4 弱引用 / 215
    7.3.5 幽灵引用 / 217
    7.3.6 引用队列 / 220
    7.4 Java本地接口 / 221
    7.4.1 JNI基本用法 / 221
    7.4.2 Java程序中集成C/C++代码 / 225
    7.4.3 在C/C++程序中启动Java虚拟机 / 227
    7.5 HotSpot虚拟机 / 228
    7.5.1 字节代码执行 / 229
    7.5.2 垃圾回收 / 229
    7.5.3 启动参数 / 235
    7.5.4 分析工具 / 236
    7.5.5 Java虚拟机工具接口 / 241
    7.6 小结 / 244
    第8章 Java源代码和字节代码操作 / 245
    8.1 Java字节代码格式 / 245
    8.1.1 基本格式 / 246
    8.1.2 常量池的结构 / 248
    8.1.3 属性 / 249
    8.2 动态编译Java源代码 / 249
    8.2.1 使用javac工具 / 250
    8.2.2 Java编译器API / 251
    8.2.3 使用Eclipse JDT编译器 / 254
    8.3 字节代码增强 / 257
    8.3.1 使用ASM / 258
    8.3.2 增强代理 / 267
    8.4 注解 / 271
    8.4.1 注解类型 / 271
    8.4.2 创建注解类型 / 273
    8.4.3 使用注解类型 / 274
    8.4.4 处理注解 / 275
    8.5 使用案例 / 284
    8.6 小结 / 286
    第9章 Java类加载器 / 287
    9.1 类加载器概述 / 287
    9.2 类加载器的层次结构与代理模式 / 288
    9.3 创建类加载器 / 290
    9.4 类加载器的隔离作用 / 294
    9.5 线程上下文类加载器 / 296
    9.6 Class.forName方法 / 298
    9.7 加载资源 / 299
    9.8 Web应用中的类加载器 / 301
    9.9 OSGi中的类加载器 / 303
    9.9.1 OSGi基本的类加载器机制 / 303
    9.9.2 Equinox框架的类加载实现机制 / 303
    9.9.3 Equinox框架嵌入到Web容器中 / 306
    9.10 小结 / 308
    第10章 对象生命周期 / 309
    10.1 Java类的链接 / 309
    10.2 Java类的初始化 / 311
    10.3 对象的创建与初始化 / 312
    10.4 对象终止 / 314
    10.5 对象复制 / 318
    10.6 对象序列化 / 322
    10.6.1 默认的对象序列化 / 324
    10.6.2 自定义对象序列化 / 326
    10.6.3 对象替换 / 329
    10.6.4 版本更新 / 330
    10.6.5 **性 / 331
    10.6.6 使用Externalizable接口 / 332
    10.7 小结 / 334
    第11章 多线程与并发编程实践 / 335
    11.1 多线程 / 335
    11.1.1 可见性 / 336
    11.1.2 Java内存模型 / 339
    11.1.3 volatile关键词 / 340
    11.1.4 final关键词 / 341
    11.1.5 原子操作 / 342
    11.2 基本线程同步方式 / 343
    11.2.1 synchronized关键词 / 343
    11.2.2 Object类的wait、notify和notifyAll方法 / 344
    11.3 使用Thread类 / 346
    11.3.1 线程状态 / 346
    11.3.2 线程中断 / 347
    11.3.3 线程等待、睡眠和让步 / 348
    11.4 非阻塞方式 / 349
    11.5 **实用工具 / 352
    11.5.1 **同步机制 / 352
    11.5.2 底层同步器 / 355
    11.5.3 **同步对象 / 357
    11.5.4 数据结构 / 363
    11.5.5 任务执行 / 365
    11.6 Java SE 7新特性 / 368
    11.6.1 轻量级任务执行框架fork/join / 368
    11.6.2 多阶段线程同步工具 / 370
    11.7 ThreadLocal类 / 373
    11.8 小结 / 374
    第12章 Java泛型 / 375
    12.1 泛型基本概念 / 375
    12.2 类型擦除 / 378
    12.3 上界和下界 / 382
    12.4 通配符 / 384
    12.5 泛型与数组 / 385
    12.6 类型系统 / 388
    12.7 覆写与重载 / 391
    12.7.1 覆写对方法类型签名的要求 / 391
    12.7.2 覆写对返回值类型的要求 / 395
    12.7.3 覆写对异常声明的要求 / 396
    12.7.4 重载 / 396
    12.8 类型推断和<>操作符 / 397
    12.9 泛型与反射API / 400
    12.10 使用案例 / 402
    12.11 小结 / 403
    第13章 Java** / 405
    13.1 Java**概述 / 405
    13.2 用户认证 / 406
    13.2.1 主体、身份标识与凭证 / 406
    13.2.2 登录 / 407
    13.3 权限控制 / 415
    13.3.1 权限、策略与保护域 / 416
    13.3.2 访问控制权限 / 418
    13.3.3 特权动作 / 420
    13.3.4 访问控制上下文 / 421
    13.3.5 守卫对象 / 423
    13.4 加密与解密、报文摘要和数字签名 / 424
    13.4.1 Java密码框架 / 424
    13.4.2 加密与解密 / 425
    13.4.3 报文摘要 / 427
    13.4.4 数字签名 / 428
    13.5 **套接字连接 / 430
    13.5.1 SSL协议 / 431
    13.5.2 HTTPS / 432
    13.6 使用案例 / 434
    13.7 小结 / 437
    第14章 超越Java 7 / 438
    14.1 lambda表达式 / 438
    14.1.1 函数式接口 / 439
    14.1.2 lambda表达式的语法 / 440
    14.1.3 目标类型 / 440
    14.1.4 词法作用域 / 441
    14.1.5 方法引用 / 442
    14.1.6 接口的默认方法 / 443
    14.2 Java平台模块化 / 444
    14.3 Java SE 8的其他更新 / 445
    14.4 小结 / 445
    附录A OpenJDK / 446
    附录B Java简史 / 448
    编辑推荐语
    全面阐释Java 7在语法、JVM、类库和API等方面的所有重要新功能和新特性,可帮助***大幅度提升编码效率和提高代码质量
    对JVM、源代码和字节代码操作、类加载器、对象生命周期、多线程、并发编程、泛型、**等Java平台的核心技术进行了深入解析,包含大量*佳实践

    与描述相符

    100

    北京 天津 河北 山西 内蒙古 辽宁 吉林 黑龙江 上海 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 西藏 陕西 甘肃 青海 宁夏 新疆 台湾 香港 澳门 海外