当前位置: 100md首页 > 电子书籍 > 资料26 > 一些大合集 > 书屋电子书 > 01
编号:117876
《Java程序员修炼之道》.azw3 .pdf .txt
基本信息:
    书名: Java程序员修炼之道
    作者: Benjamin J. Evans, Martijn Verburg
    出版社/出版时间: 人民邮电出版社2016-06-15
    国际标准书号: 978-7-115-32195-4
    电子版包括 .azw3 .pdf .txt等格式:
    《Java程序员修炼之道》.azw3 文件 3360 KB,
    《Java程序员修炼之道》.pdf 文件 596 页,7672 KB,
    《Java程序员修炼之道》.txt 文件 33.6 万字,870 KB。
pdf部分截图:
    第1页
    第14页
    第79页
    第192页
    第222页

目录:
        版权信息
        版权声明
        序
        前言
        致谢
        关于本书 阅读须知
        读者对象
        路线图
        代码约定及下载
        软件需求
        作者在线
        关于作者
        关于封面图片
        第一部分 用Java 7做开发
        第1章 初识Java 7 1.1 语言与平台
        1.2 Coin项目:浓缩的都是精华
        1.3 Coin项目中的修改1.3.1 switch语句中的String
        1.3.2 更强的数值文本表示法
        1.3.3 改善后的异常处理
        1.3.4 Try-with-resources(TWR)
        1.3.5 钻石语法
        1.3.6 简化变参方法调用
        1.4 小结
        第2章 新I/O 2.1 Java I/O简史2.1.1 Java 1.0到1.3
        2.1.2 在Java 1.4中引入的NIO
        2.1.3 下一代I/O-NIO.2
        2.2 文件I/O的基石:Path2.2.1 创建一个Path
        2.2.2 从Path中获取信息
        2.2.3 移除冗余项
        2.2.4 转换Path
        2.2.5 NIO.2 Path和Java已有的File类
        2.3 处理目录和目录树2.3.1 在目录中查找文件
        2.3.2 遍历目录树
        2.4 NIO.2的文件系统I/O2.4.1 创建和删除文件
        2.4.2 文件的复制和移动
        2.4.3 文件的属性
        2.4.4 快速读写数据
        2.4.5 文件修改通知
        2.4.6 SeekableByteChannel
        2.5 异步 I/O操作2.5.1 将来式
        2.5.2 回调式
        2.6 Socket和Channel的整合2.6.1 NetworkChannel
        2.6.2 MulticastChannel
        2.7 小结
        第二部分 关键技术
        第3章 依赖注入 3.1 知识注入:理解IoC和DI3.1.1 控制反转
        3.1.2 依赖注入
        3.1.3 转成DI
        3.2 Java中标准化的DI3.2.1 @Inject注解
        3.2.2 @Qualifier注解
        3.2.3 @Named注解
        3.2.4 @Scope注解
        3.2.5 @Singleton注解
        3.2.6 接口Provider
        3.3 Java中的DI参考实现:Guice 33.3.1 Guice新手指南
        3.3.2 水手绳结:Guice的各种绑定
        3.3.3 在Guice中限定注入对象的生命周期
        3.4 小结
        第4章 现代并发 4.1 并发理论简介4.1.1 解释Java线程模型
        4.1.2 设计理念
        4.1.3 这些原则如何以及为何会相互冲突
        4.1.4 系统开销之源
        4.1.5 一个事务处理的例子
        4.2 块结构并发(Java 5之前)4.2.1 同步与锁
        4.2.2 线程的状态模型
        4.2.3 完全同步对象
        4.2.4 死锁
        4.2.5 为什么是synchronized
        4.2.6 关键字volatile
        4.2.7 不可变性
        4.3 现代并发应用程序的构件4.3.1 原子类:java.util.concurrent.atomic
        4.3.2 线程锁:java.util.concurrent.locks
        4.3.3 CountDownLatch
        4.3.4 ConcurrentHashMap
        4.3.5 CopyOnWriteArrayList
        4.3.6 Queue
        4.4 控制执行4.4.1 任务建模
        4.4.2 ScheduledThreadPoolExecutor
        4.5 分支/合并框架4.5.1 一个简单的分支/合并例子
        4.5.2 ForkJoinTask与工作窃取
        4.5.3 并行问题
        4.6 Java内存模型
        4.7 小结
        第5章 类文件与字节码 5.1 类加载和类对象5.1.1 加载和连接:概览
        5.1.2 验证
        5.1.3 Class对象
        5.1.4 类加载器
        5.1.5 示例:依赖注入中的类加载器
        5.2 使用方法句柄5.2.1 MethodHandle
        5.2.2 MethodType
        5.2.3 查找方法句柄
        5.2.4 示例:反射、代理与方法句柄
        5.2.5 为什么选择MethodHandle
        5.3 检查类文件5.3.1 介绍javap
        5.3.2 方法签名的内部形式
        5.3.3 常量池
        5.4 字节码5.4.1 示例:反编译类
        5.4.2 运行时环境
        5.4.3 操作码介绍
        5.4.4 加载和储存操作码
        5.4.5 数学运算操作码
        5.4.6 执行控制操作码
        5.4.7 调用操作码
        5.4.8 平台操作操作码
        5.4.9 操作码的快捷形式
        5.4.10 示例:字符串拼接
        5.5 Invokedynamic5.5.1 invokedynamic如何工作
        5.5.2 示例:反编译invokedynamic调用
        5.6 小结
        第6章 理解性能调优 6.1 性能术语6.1.1 等待时间
        6.1.2 吞吐量
        6.1.3 利用率
        6.1.4 效率
        6.1.5 容量
        6.1.6 扩展性
        6.1.7 退化
        6.2 务实的性能分析法6.2.1 知道你在测量什么
        6.2.2 知道怎么测量
        6.2.3 知道性能目标是什么
        6.2.4 知道什么时候停止优化
        6.2.5 知道高性能的成本
        6.2.6 知道过早优化的危险
        6.3 哪里出错了?我们担心的原因6.3.1 过去和未来的性能趋势:摩尔定律
        6.3.2 理解内存延迟层级
        6.3.3 为什么Java性能调优存在困难
        6.4 一个来自于硬件的时间问题6.4.1 硬件时钟
        6.4.2 麻烦的nanoTime()
        6.4.3 时间在性能调优中的作用
        6.4.4 案例研究:理解缓存未命中
        6.5 垃圾收集6.5.1 基本算法
        6.5.2 标记和清除
        6.5.3 jmap
        6.5.4 与GC相关的JVM参数
        6.5.5 读懂GC日志
        6.5.6 用VisualVM查看内存使用情况
        6.5.7 逸出分析
        6.5.8 并发标记清除
        6.5.9 新的收集器:G1
        6.6 HotSpot的JIT编译6.6.1 介绍HotSpot
        6.6.2 内联方法
        6.6.3 动态编译和独占调用
        6.6.4 读懂编译日志
        6.7 小结
        第三部分 JVM上的多语言编程
        第7章 备选JVM语言 7.1 Java 太笨?纯粹诽谤7.1.1 整合系统
        7.1.2 函数式编程的基本原理
        7.1.3 映射与过滤器
        7.2 语言生态学7.2.1 解释型与编译型语言
        7.2.2 动态与静态类型
        7.2.3 命令式与函数式语言
        7.2.4 重新实现的语言与