这是一部从 工作原理 和 工程实践 两个维度深入剖析JVM的著作,是计算机领域公认的经典,繁体版在台湾也颇受欢迎。 自2011年上市以来,前两个版本累计印刷36次,销量超过30万册,两家主要网络书店的评论近90000条,内容上近乎零差评,是原创计算机图书领域不可逾越的丰碑。 第3版在第2版的基础上做了重大修订,内容更丰富、实战性更强:根据新版JDK对内容进行了全方位的修订和升级,围绕新技术和生产实践新增逾10万字,包含近50%的全新内容,并对第2版中含糊、瑕疵和错误内容进行了修正。 全书一共13章,分为五大部分: 第壹部分(第1章)走近Java 系统介绍了Java的技术体系、发展历程、虚拟机家族,以及动手编译JDK,了解这部分内容能对学习JVM提供良好的指引。 第二部分(第2~5章)自动内存管理 详细讲解了Java的内存区域与内存溢出、垃圾收集器
本书是一份旨在帮助Java求职者在面试中脱颖而出的重要指南。本书涵盖Java并发编程的多个关键主题,如并发原理和线程安全、并发关键字原理、并发锁和死锁、并发容器和工具、并发线程池以及并发设计与实战等。本书的特色在于将 大厂 名企 的面试问题和实践经验相结合,不仅对面试问题和面试官心理进行深度剖析,还对面试问题解答和相关技术点进行详细介绍,这样更有利于读者全面理解相关知识点和技术,并能够在实际工作和面试中灵活应用。 通过学习本书,读者可以深入了解 大厂 名企 的面试问题和实践经验。本书提供的面试问题解答和宝贵经验将有助于读者在实际工作中提升自己的能力,并在面试中表现更加出色,提高面试成功率,斩获高薪Offer(职位)。无论是对面试准备还是对技能提升而言,本书都是读者不可或缺的指南,能够帮助读者在职业
内容简介本书是Java并发编程领域公认的标准性著作,第1版自2015年出版以来,累计印刷23次,销售超过10万册,全网读者评论超过40000条,口碑爆棚。第2版在第1版的良好基础上,与时具进,反映了Java技术的最新发展;去芜存菁:处理了广大读者反馈的问题;博采众长:吸收了行业专家的宝贵建议;厚积薄发,融入了作者近8年在Java并发编程方面积累的新技术和新经验。新增和修订的内容超过50%,无论是理论、方法还是实践,都有了大幅度的提升。本书从并发编程的底层实现机制入手,围绕JDK源码、JVM、CPU等多角度详细介绍了设计Java并发程序的框架、原理、核心技术、设计模式与应用,同时辅以丰富的示例代码,使得开发人员能够更快地领悟Java并发编程的要领,利用Java平台的基础并发功能快速地构建大规模的并发应用。本书具体包含如下核心内容:?Java并发编程的
本书由拥有20多年教学与研究经验的资深Java技术专家撰写(获Jolt大奖),是程序员的优选Java指南。本版针对Java SE 9、10和 11全面更新。 全书共12章,为你指明Java的学习路径!。 ☉第1章概述Java语言的特色功能; ☉第2章详细论述如何下载和安装JDK以及本书的程序示例; ☉第3章开始讨论Java 语言,包括变量、循环和简单的函数; ☉第4章介绍面向对象两大基石中极要的一个概念 封装,以及Java语言实现封装的机制,即类与方法; ☉第5章介绍面向对象的另一个重要概念 继承,继承使程序员可以使用现有的类,并根据需要进行修改; ☉第6章展示如何使用Java的接口(可帮助你充分获得Java的完全面向对象程序设计能力)、lambda表达式(用来表述可以在以后某个时间点执行的代码块)和内部类; ☉第7章讨论异常处理,并给出大量实用的调试技巧; ☉第8章概要介绍
本书是一部全面且深入的 Java 代码审计指南,旨在帮助读者掌握 Java Web 应用中常见安全漏洞的识别、分析及防御技能。全书共分 4 篇,从基础到实战,系统地介绍 Java 代码审计的各个方面。 基础篇(第 1 章)主要介绍 Java Web 环境的搭建步骤、常见的动态调试方法以及代码审计工具的基本使用方法,为后续的深入学习打下坚实基础。 入门篇(第 2 章~第 3 章)首先介绍 Java 代码审计中发现的常见漏洞,然后通过实战演练,以开源 Java 漏洞靶场 Java-sec-code 为蓝本,运用代码审计工具 CodeQL 进行审计。 高级篇(第 4 章~第 6 章)分别针对 Java Web 开发中常见的 SSM、SSH 及 Spring Boot + MyBatis 等框架进行详细介绍,并选取其中典型的框架漏洞进行深入剖析和调试分析。 实战篇(第 7 章)通过真实 Java Web 应用程序的审计案例,详细展示如何在实践中运用 CodeQL 等审计工具快
本书旨在帮助Java求职者在面试中脱颖而出,内容涵盖Java通用架构方案的多个关键主题,如微服务架构、高性能架构、高可用架构、高并发架构、分布式原理和分布式缓存等。本书的特点在于,它将互联网领域的名企、大厂的面试问题与实际案例相结合,对面试问题和面试官的心理进行深度剖析,并将面试问题的相关解答和相应技术点详细展开,以帮助读者全面理解相关概念和技术,并能在面试和实际工作中灵活应用。 通过学习本书,读者可以深入了解名企、大厂的实际案例和相关问题的解决方案。书中总结的一些宝贵经验将有助于读者在面试中表现得更加出色,增加成功的机会,斩获高薪Offer,并提升自己的实际工作能力。读者无论是要做好面试准备还是要适应实际工作需求,都能从本书中获益。
本书以实用的设计模式为例,讲解了Java近年来在改善语法方面取得的进展,同时在实现这些模式的过程中展示了语言特性、设计模式与平台效率之间的关系。本书涵盖23种传统的设计模式、11种较为常见的模式,以及8种适用于多线程环境的并发模式。另外,本书还简要介绍了15种反模式。作者讲解这些模式的时候不仅给出了简洁、直观的范例代码,而且还利用UML类图与JFR工具展示了运用该模式的程序所具备的架构及运行细节,让读者能够更全面地了解模式对代码结构的影响,以及模式与Java虚拟机的交互情况。本书的特点在于把Java这种成熟的编程语言以及该语言最近新增的特性与各种设计模式结合起来,告诉读者怎样充分发挥Java的特性与优势,从而更好地实现设计模式,避免陷入空谈概念而无法落实的境地。
本书第3版深入研究JavaScript语言,详细介绍如何编写漂亮、高效的代码。更新的内容包括:类表示法、箭头函数、迭代器、异步函数、模板字符串和块作用域等功能的全新内容。 本书通过大量示例进行讲解,并提供大量习题和完整项目案例,为读者提供了编写自己的程序的实践经验。书中不仅介绍JavaScript语言的基本结构以及控制结构、函数和数据结构,还详细介绍错误处理和错误修复、模块化和异步编程,以及Web浏览器编程。
本书由拥有20多年教学与研究经验的资深Java技术专家撰写(获Jolt大奖),是程序员的优选Java指南。本版针对Java SE 9、10和 11全面更新。全书共12章。第1章概述Java语言的特
本书以轻松幽默的语言,从零开始介绍如何学习Java语言。书名来源于编程语言中最经典的Hello World程序,寓意带您从入门到精通。 本书全面系统地介绍了Java语言编程,共包含15章内容,涵盖了Java的基础语法、面向对象编程、常用类库、GUI编程、数据库访问、网络编程、多线程等核心知识点和编程技能。 书中大部分知识点后都设计了针对性的训练营,通过大量示例和综合练习案例,帮助读者深入理解知识并灵活运用。 每章都设有总结与扩展和同步练习,以及若干训练营,旨在通过综合案例巩固知识。我们提供配套代码、课件、答疑服务,以及视频来辅助学习(下载方式见封底)。 书中目录采用幽默风格命名,使用漫画角色对话的形式讲解知识,以激发读者的学习兴趣。 无论您是编程新手,还是有经验的程序员,本书都将以浅显易懂的方式,带您掌握Java语言实用
本书从整个Java后端研发的视角,通过大量的案例分析日常开发过程中可能遇到的150多个坑点及其解决方案,并讨论一些best实践。这些坑点涵盖编码(不仅涉及Java语法层面,还涉及多线程、连接池、数据库索引、事务、日志、Spring框架等层面)、系统设计、代码安全等方面。本书在剖析这些坑点时还会讲解排查思路和相关工具的使用,让读者不仅能了解常见的坑点,还能具备一定的问题分析能力,以便日后自行排查更多的坑点。
本书主要介绍了SAP异于ABAP传统编程的SAP Java的 Web编程技术。围绕常用的Web Dynpro for Java技术,以SAP Java 的技术架构、开发环境、基础编程和相关应用为主线,讲解Web Dynpro for Java这门技术中各元素之间的关联及制约关系,包括如何设置Web Dynpro for Java的运行环境,如何创建及编辑Web Dynpro for Java的基本元素,如何应用相关技术等。 技术架构部分由浅入深,详述了Web Dynpro for Java的相关概念,Web Dynpro组件中视图、窗体、Web Dynpro控制器相关组件的作用和关系。开发环境部分详细地介绍了操作系统和服务器的相关配置,并详述如何检查配置结果和配置效果。基础编程部分系统、全面地介绍了各Web Dynpro元素的原理及实现步骤,举例详述如何创建各Web Dynpro元素,并详述不同Web Dynpro元素的编辑实现及应用效果。基础应用部分介绍了Web Dynpro组件之间进行数据交换的几种方式,对Web Dy
本书由拥有20多年教学与研究经验的资深Java技术专家撰写(获Jolt大奖),本版针对Java 11全面更新。 全书共分12章。 第1章介绍了Java中的流库; 第2章涵盖输入/输出处理,探讨了Java 11中引入的广受欢迎的改进和优化; 第3章介绍了XML,展示如何解析XML文件、生成XML和使用XSL转换; 第4章讲解了网络API,以及怎样连接到服务器、实现自己的服务器、创建HTTP连接,并讨论了新的HTTP客户端; 第5章介绍了数据库编程,重点讲解JDBC,即Java数据库连接API; 第6章涵盖如何使用新的日期和时间库来处理日历及时区; 第7章讨论国际化; 第8章介绍3种处理代码的技术; 第9章讲解从Java 9开始引入的Java平台模块系统,以促进Java平台和核心类库的有序演化; 第10章继续介绍Java安全模型,展示怎样编写类加载器和安全管理器,以及允许使用消息、代码签名、授权和认证及加密
《深入解析Java编译器:源码剖析与实例详解》以工业级编译器Javac的源代码为基础,详细介绍了词法分析、语法分析、语义分析及代码生成 等各个阶段的具体实现,同时对重点源代码的实现进行了详细解读,让读者能真正掌握从Java源代码变为Class文件的每个过程。 《深入解析Java编译器:源码剖析与实例详解》共18章,章节的前后顺序与Javac编译Java源代码的顺序严格对应,涵盖的主要内容有Javac介绍、Javac文件系统、词法分析、语法分析之认识树节点、语法分析之建立抽象语法树、符号表的组织、填充符号表、插入式注解的实现、语义分析之类型转换、语义分析之语法检查、语义分析之引用消解、语义分析之语法树标注、泛型的实现、数据流检查、语法糖去除、字节码指令生成、重要结构的字节码指令生成、生成Class文件。同时,为了读者能更好地查阅相关信息,
《码出高效:Java 开发手册》源于影响了全球250万名开发工程师的《阿里巴巴Java开发手册》,作者静心沉淀,对Java规约的来龙去脉进行了全面而彻底的内容梳理。本书以实战为中心,以新颖的角度全面阐述面向对象理论,逐步深入地探索怎样成为一位优秀开发工程师。比如:如何驾轻就熟地使用各类集合框架;如何得心应手地处理高并发多线程问题;如何顺其自然地写出可读性强、可维护性好的优雅代码。本书旁征博引、文风轻松,秉持 图胜于表,表胜于言 的理念,深入浅出地将计算机基础、面向对象思想、JVM探源、数据结构与集合、并发与多线程、单元测试等知识客观、立体地呈现出来。紧扣学以致用、学以精进的目标,结合阿里巴巴实践经验和故障案例,与底层源码解析融会贯通,娓娓道来。本书以打造民族标杆图书为己任,追求极致,打磨精品,在技术广
本书归纳了Java学习者、工作者在工作和面试中*容易遭遇的技术短板和算法基础,本书把Java编程中的要点、难点和Java程序员的算法基础知识收集在一起,旨在帮助读者有针对性地提高这些看似 司空见惯 的基本功。本书内容分为四个部分,其中*部分主要介绍Java内存管理,这部分是大多数Java程序员*容易忽略的地方 因为Java不像C语言,而且Java提供了垃圾回收机制,因此导致许多Java程序员对内存管理重视不够;第二部分主要介绍Java编程过程中各种常见的陷阱,这些陷阱有的来自李刚老师早年的痛苦经历,有的来自他的众多学生的痛苦经历,都是Java程序员在编程过程中的 前车之鉴 ,希望读者能引以为戒;第三部分主要介绍学习Java的算法基础知识,包括常用数据结构的各种算法实现,这部分内容是大多数Java程序员重视不够的地方,也是大厂面试的常考面试题;第四
《Java高级程序员面试笔试宝典》是一本讲解Java高级程序员面试笔试的百科全书,在写法上,除了讲解如何解答Java高级程序员面试笔试问题以外,还引入了相关知识点辅以说明,让读者能够更加容易理解。 由于Java高级程序员所需要掌握的知识体系,较之初级、中级程序员会更加底层,所以《Java高级程序员面试笔试宝典》会花费大量篇幅针对Java语言的高级特性(泛型、Collection框架、JUC框架、Java IO、JVM等)进行深度剖析。《Java高级程序员面试笔试宝典》将Java高级程序员面试笔试过程中各类知识点一网打尽。在广度上,通过各种渠道,搜集了近3年主流IT企业针对高级Java程序员岗位的笔试、面试涉及的知识点,包括但不限于Java高级程序员必须掌握的各类技术点等,所选择知识点均为企业招聘考查的高频知识点。在讲解的深度上,《Java高级程序员面试笔试宝典》由浅
本书全面介绍了Java 8、9、10版本的新特性,包括Lambda表达式、方法引用、流、默认方法、Optional、CompletableFuture以及新的日期和时间API,是程序员了解Java新特性的经典指南。全书共分六个部分:基础知识、使用流进行函数式数据处理、使用流和Lambda进行高效编程、无所不在的Java、提升Java的并发性、函数式编程以及Java未来的演进。