书的第2版出版于2013年,撰写时是基于早期版本的JDK7。经过将近十年的时间,今天JDK版本已经发展到了JDK12及预览版的JDK13,出现了许多激烈的变革,也涌现了不少令人欣喜的新变化、新风潮。因此笔者在撰写本书第3版时,希望能把这些新的变化融合到已有的知识框架上。 全书一共分为五个部分:走近Java、自动内存管理、虚拟机执行子系统、程序编译与代码优化、高效并发。 各个部分之间基本上是互相独立的,没有必然的前后依赖,读者可以从任何一个感兴趣的专题开始阅读,但是每个部分中的各个章节间则有先后顺序。同时,在前言部分列出了每章主要更新的内容,以便阅读过第2版的读者可以快速定位获取到新的知识。
《深入理解Java高并发编程》致力于介绍Java高并发编程方面的知识。由于多线程处理涉及的知识内容十分丰富,因此介绍时必须从Java层面的讲解一直深入到底层的知识讲解。为了帮助读者轻松阅读本书并掌握其中知识,本书做了大量基础知识的铺垫。在第1篇基础知识储备中,主要介绍计算机原理、并发基础、常见语言的线程实现、Java并发入门、JUC之Java线程池、JUC之同步结构、Java NIO详解等内容。在第2篇深入Java并发原理中,详细介绍了JUC包中所有使用的原子类的原理与源码实现;非常关键且容易出错的volatile关键字的原理,从Java、JVM、C、汇编、CPU层面对其进行详细讲解;synchronized在JVM中获取锁和释放锁的流程;JUC包的核心结构 AQS的原理与源码实现,通过逐方法、逐行的解释,帮助读者彻底掌握AQS中提供的获取锁、释放锁、条件变量等操作的实现与原理。后,详
本书将提供 的Java和面向对象编程学习体验。利用这本书,你会通过一种独特的方法学习Java语言,它不是那种只介绍怎么做的使用手册,而是会帮助你成为一名 的程序员。通过各种谜题、探秘、与 Java对象的深入访谈,你会很快了解Java的基础和 知识,包括Lambda、流、泛型、线程、网络和让人心生畏惧的桌面GUI。如果你有其他编程语言的经验,本书会采用 多现代方法让你的大脑学习编程,能够 流畅、 快捷、 容易地读写和维护Java代码。 如果你读过Head First的书,就会知道这是一本怎样的书。它会采用专门为你的大脑设计的一种生动形象的方式娓娓道来。如果你还没有读过Head First的书,这本书肯定会让你喜出望外。利用这本书,你将通过多感观的学习体验来学习Java,能让你的大脑真正开动起来,而不是一味说教,让你昏昏欲睡
本书从入门学习者的角度出发,通过通俗易懂的语言、丰富典型的实例,循序渐进地使读者在实践中学习Java编程知识,并提升自己的实际开发能力。全书共有17章,具体内容包括初识Java、Java语言基础、运算符与流程控制、面向对象基础、继承与多态、接口、异常处理、常用类、JSP基本语法、JSP内置对象、Servlet技术、过滤器和监听器、Struts2框架、Hibernate技术、Spring框架、Spring与Struts2、Hibernate框架的整合和Spring与SpringMVC、MyBatis框架的整合。书中的大部分知识都结合具体实例进行介绍,涉及的程序代码也大多给出了详细的注释,可以使读者轻松领会Java程序开发的精髓,快速提高开发技能。
本书由科大讯飞 系统架构师撰写,结合大量源码与图示,通俗易懂;自顶向下解析JDK、JVM、Linux中的Java线程通信机制、同步机制、锁机制、原子计数器、线程安全容器、线程池的实现原理与应用技巧。全书共12章,分为三篇。 基础篇( ~5章),从Linux的线程基础讲起,重点从JDK、JVM、Linux多个维度讲解Java线程的设计、通信与同步机制,如内存一致性、内存屏障、多线程间数据通信、并发控制等核心知识,从而在实际开发中提高程序的性能和稳定性。 进阶篇(第6~9章),从CPU的架构讲起,重点讲解锁算法(MCS、CLH、AQS)、Java锁机制、原子计数器、线程并发容器、线程池的设计原理与实现,以期让读者掌握Java线程的进阶知识,不仅能开发出高性能的程序,而且遇到问题可以举一反三,找到 方案。 应用篇( 0~11章),详细讲解Java线程的常见模型与使用技
本书全面介绍了Java 8、9、10版本的新特性,包括Lambda表达式、方法引用、流、默认方法、Optional、CompletableFuture以及新的日期和时间API,是程序员了解Java新特性的经典指南。全书共分六个部分:基础知识、使用流进行函数式数据处理、使用流和Lambda进行高效编程、无所不在的Java、提升Java的并发性、函数式编程以及Java未来的演进。
在这本堪称Java类经典教材的书中,畅销书作家WalterSavitch全面翔实地介绍了Java程序设计基础,内容涵盖Java程序设计语言的方方面面,是Java初学者和有经验的Java程序员的理想参考书。第2版沿袭Savitch教授深入浅出、通俗易懂的风格,充分阐述Java5.0的新增特性和新增的Scanner 类。同时还提供丰富的范例代码和大量编程练习。 本书特色:新增478个自我测试题,140个编程项目; 广泛、透彻地讲解Java类库; 引入现代化编程主题,比如UML和多线程;完全围绕Java 5.0展开讨论; 原书配套网站提供Codemate支持。
本书一共包含90个条目,每个条目讨论Java程序设计中的一条规则。这些规则反映了最有经验的程序员在实践中常用的一些有益的做法。全书以一种比较松散的方式将这些条目组织成11章,每一章都涉及软件设计的一个主要方面。因此,本书并不一定需要按部就班地从头读到尾,因为每个条目都有一定程度的独立性。这些条目相互之间经常交叉引用,因此可以很容易地在书中找到自己需要的内容。本书的目标是帮助读者更加有效地使用Java编程语言及其基本类库:java.lang、java.util和java.io,以及子包,如java.util.concurrent和java.util.function。本书时不时地也会讨论其他的类库。