本书是国外数据结构与算法分析方面的经典教材,使用卓越的Java编程语言作为实现工具讨论了数据结构(组织大量数据的方法)和算法分析(对算法运行时间的估计)。本书把算法分析与*有效率的Java程序的开发有机地结合起来,深入分析每种算法,内容全面、缜密严格,并细致讲解精心构造程序的方法。
本书深入浅出地介绍了Java线程和并发,是一本完美的Java并发参考手册。书中从并发性和线程安全性的基本概念出发,介绍了如何使用类库提供的基本并发构建块,用于避免并发危险、构造线程安全的类及验证线程安全的规则,如何将小的线程安全类组合成更大的线程安全类,如何利用线程来提高并发应用程序的吞吐量,如何识别可并行执行的任务,如何提高单线程子系统的响应性,如何确保并发程序执行预期任务,如何提高并发代码的性能和可伸缩性等内容,*后介绍了一些高级主题,如显式锁、原子变量、非阻塞算法以及如何开发自定义的同步工具类。 本书适合有Java基础的程序开发人员阅读。 本书涵盖的内容包括: 并发性与线程安全性的基本概念 构建以及组合各种线程安全类的技术 使用java.util.concurrent包中的各种并发构建基础模块 性能优
第1章介绍Java并发编程的挑战,会向读者说明可能会遇到哪些问题,以及如何解决。 第2章Java并发编程的底层实现原理,从CPU和JVM2个层面剖析。 第3章详细深入介绍了Java的内存模型。 第4章从介绍多线程技术带来的好处开始,讲述了如何启动和终止线程以及线程的状态,详细阐述了多线程之间进行通信的基本方式和等待/通知经典范式。 第5章介绍Java并发包中与锁相关的API和组件,以及这些API和组件的使用方式和实现细节。 第6章介绍了Java中的大部分并发容器及其实现原理。 第7章介绍了Java中的原子操作类,并给出一些实例。 第8章介绍了Java中提供的很多并发工具类。 第9章介绍了Java中的线程池实现原理和使用建议。 第10章介绍了Executor框架的整体结构和成员组件。第11章介绍几个并发编程的实战与并发编程问题排查。
内容介绍 很多JVM的底层技术细节你是否只了解表面? 面对JVM Crash或性能调优方面的问题时你是否会束手无策? 面对上层Java应用发生的偏离预期的行为是否会不知所措? 这本书以源码分析为基础,从运行时、垃圾回收器、即时编译器3个维度全面、深入解析HotSpot VM的底层实现和工作机制,同时与上层的Java语言和库结合,指导读者解决JVM开发、JVM调优和JVM排错方面遇到的各种问题。 广度与深度兼顾:广度上涵盖Graal VM、CDS、Instrumentation、编译重放、非标准字节码、RTM锁、JIT调试工具、EpsilonGC/ShenandoahGC/ZGC、G1字符串去重等重要知识点;深度上深入解析了C1、C2、G1GC、ObjectMonitor、Mutex、模板解释器等的底层实现。 全书共 11 章,参考 OpenJDK 社区的划分方式来组织内容,分为运行时、即时编译器、垃圾回收器三个部分。 部分(第1~6章) 运行时 首先,从Java生态系统的
本书是国内系统分析Spring源代码的著作,也是Spring领域的问鼎之作,由业界拥有10余年开发经验的资深Java专家亲自执笔,Java开发者社区和Spring开发者社区联袂推荐。本书第1版不仅在内容上获得了读者的广泛好评,而且在销量上也摘取了同类书的桂冠,曾经一度掀起Java类图书的销售热潮。第2版不仅继承了第1版在内容组织和写作方式上的优点,而且还根据广大读者的反馈改进了若干细节上的不足。更为重要的是,对过时的内容进行了更新,并增加了大量内容,使本书更趋近于完美。 本书从源代码的角度对Spring的内核和各个主要功能模块的架构、设计和实现原理进行了深入剖析。你不仅能从本书中参透Spring框架的优秀架构和设计思想,还能从Spring优雅的实现源码中一窥Java语言的精髓。本书在开篇之前对Spring的设计理念和整体架构进行了全面的介绍,能让读
本书将教会读者如何在Java库的帮助下执行语言分析,同时不断地从结果中获得见解。首先介绍NLP及其各种概念是如何工作的,然后探索Java中用于NLP的重要工具和库,如CoreNLP、OpenNLP、Neuroph、Mallet等。之后,读者将开始对不同的输入和任务执行NLP,例如标记、模型训练、部分语音、解析树等。读者会学习到统计机器翻译、摘要、对话系统、复杂搜索、有监督和无监督的NLP,以及其他内容。在本书的*后,读者也会学习到更多关于NLP、神经网络和其他各种Java中用于增强NLP应用程序性能的训练模型。
本书由该技术的创立人所写,是权威的Java虚拟机参考资料。书中完备、准确而又详尽地描述了Java虚拟机。它完整地讲述了由JavaSE8所引入的新特性,例如对包含默认实现代码的接口方法所做的调用,以及为支持类型注解及方法参数注解而对class文件格式所做的扩展。此书也阐明了class文件中各属性的含义,以及字节码验证的规则。
《Java高级程序员面试笔试宝典》是一本讲解Java高级程序员面试笔试的百科全书,在写法上,除了讲解如何解答Java高级程序员面试笔试问题以外,还引入了相关知识点辅以说明,让读者能够更加容易理解。 由于Java高级程序员所需要掌握的知识体系,较之初级、中级程序员会更加底层,所以《Java高级程序员面试笔试宝典》会花费大量篇幅针对Java语言的高级特性(泛型、Collection框架、JUC框架、Java IO、JVM等)进行深度剖析。《Java高级程序员面试笔试宝典》将Java高级程序员面试笔试过程中各类知识点一网打尽。在广度上,通过各种渠道,搜集了近3年主流IT企业针对高级Java程序员岗位的笔试、面试涉及的知识点,包括但不限于Java高级程序员必须掌握的各类技术点等,所选择知识点均为企业招聘考查的高频知识点。在讲解的深度上,《Java高级程序员面试笔试宝典》由浅
本书向读者展示Java语言中更加智能化的编码实例。书中首先介绍面向对象编程(OOP)和函数式编程(FP)范式,然后描述常用设计模式的经典使用方法,并解释如何利用函数式编程特性改变经典的设计模式。读者将学习混合使用OOP和FP的实现方式,然后学习响应式编程模型——一种为了编写更好的代码而将OOP和FP结合使用的方法。之后,本书将介绍从MVC架构向微服务和无服务器架构转变的发展趋势,*后介绍Java新版本的功能特性及其实践。通过本书的学习,读者可以有效地解决开发应用程序过程中的常见问题,能够轻松地应对各种规模项目的扩展和维护。
本书深入浅出地介绍了Java线程和并发,是一本完美的Java并发参考手册。书中从并发性和线程安全性的基本概念出发,介绍了如何使用类库提供的基本并发构建块,用于避免并发危险、构造线程安全的类及验证线程安全的规则,如何将小的线程安全类组合成更大的线程安全类,如何利用线程来提高并发应用程序的吞吐量,如何识别可并行执行的任务,如何提高单线程子系统的响应性,如何确保并发程序执行预期任务,如何提高并发代码的性能和可伸缩性等内容,最后介绍了一些高级主题,如显式锁、原子变量、非阻塞算法以及如何开发自定义的同步工具类。 本书适合Java程序开发人员阅读。
贾蓓、镇明敏、杜磊编著的《Java Web整合开发实战--基于Struts2+Hibernate+Spring》详细介绍了Java Web开发中的三大开发框架Struts、Hibernate与Spring的整合使用。本书内容由浅入深,循序渐进,理论讲解与实践相结合,并列举了大量典型应用实例帮助读者理解开发过程中的重点和难点知识,同时提供了详尽的项目开发和部署步骤。本书附带1张DVD光盘,内容为本书配套教学视频及示例源程序,另外还附赠了大量的Java Web典型模块与项目案例源程序及教学视频。 本书共21章,分5篇。第1篇为Java Web开发基础,介绍了Web工作机制、Java Web开发环境的搭建、JSP技术等;第2篇为表现层框架Struts技术,介绍了Struts 2的工作原理、核心文件、数据校验与国际化、标签库、等;第3篇为持久层框架Hibernate技术,介绍了Hibernate的工作原理、核心文件、核心接口及相关插件的使用方法;第4篇为业务层
本书图文并茂,示例丰富,通过284幅图表和258段代码,由浅入深地解说了从Java的基础知识到面向对象编程的内容,涉及变量、分支、循环、基本数据类型和运算、数组、方法、类、包、接口、字符和字符串、异常处理等。书中出现的程序包括猜数游戏、猜拳游戏、心算训练等,能够让读者愉快地学习。
本书是靠前专享一本系统分析Spring源代码的著作,也是Spring领域的问鼎之作,由业界拥有10余年开发经验的资深Java专家亲自执笔,Java开发者社区和Spring开发者社区联袂推荐。本书版不仅在内容上获得了读者的广泛好评,而且在销量上也摘取了同类书的桂冠,曾经一度掀起Java类图书的销售热潮。第2版不仅继承了版在内容组织和写作方式上的优点,而且还根据广大读者的反馈改进了若干细节上的不足。更为重要的是,结合Spring的很新版本对过时的内容进行了更新,并增加了大量新内容,使本书更趋近于完美。 本书从源代码的角度对Spring的内核和各个主要功能模块的架构、设计和实现原理进行了深入剖析。你不仅能从本书中参透Spring框架的很好架构和设计思想,还能从Spring优雅的实现源码中一窥Java语言的精髓。本书在开篇之前对Spring的设计理念和整体架构进行了
随着信息科学与技术的迅速发展,人类每时每刻都会面对层出不穷的新技术和新概念。毫无疑问,在节奏越来越快的工作和生活中,人们需要通过阅读和学习大量信息丰富、具备实践指导意义的图书来获取新知识和新技能,从而不断提高自身素质,紧跟信息化时代发展的步伐。 众所周知,在计算机硬件方面,高性价比的解决方案和新型技术的应用一直备受青睐;在软件技术方面,随着计算机软件的规模和复杂性与日俱增,软件技术不断地受到挑战,人们一直在为寻求更先进的软件技术而奋斗不止。目前,计算机和互联网在社会生活中日益普及,掌握计算机网络技术和理论已成为大众的文化需求。由于信息科学与技术在电工、电子、通信、工业控制、智能建筑、工业产品设计与制造等专业领域中已经得到充分、广泛的应用,所以这些专业领域中的研究人员
《Java程序设计与项目实战(全程实录)》从初学者学习Java编程的角度出发,根据作者多年的程序设计经验,按照科学的学习规律,由浅入深、循序渐进地向读者讲述了Java开发环境的搭建、Java基础语法知识、Java算法流程、面向对象高级特性、Java的输入/输出、多线程机制、Swing界面编程、Applet的基本知识、Java2D/3D、Java流媒体、JDBC编程等。同时每章都配有上机实验指导,每个实验都有其实验目的、实验要求和实验内容,便于老师和学生上机实验使用,每章都有Java开发过程中的问题集锦与解答,自我检测与实践以及经典考试、面试问题分析,以便进一步提高学生的编程激情。书中也提供了MP3/MP4媒体播放器、网络实时流媒体收发系统、航空电子票务综合管理系统应用案例,用于作为高年级学生的毕业设计的案例。 《Java程序设计与项目实战(全程实录)》内容丰富