本书从问题入手,使用100多个创意编程范例,试图在深入理解原理的基础上,通过自造 轮子 帮助读者提升代码编写功底和工程实现能力。全书分为12章,内容包括Java入门、分形图像处理、数据结构、网络通信、动态装载、多线程、Raft协议、分布式编程和ZooKeeper框架等,由浅入深实现 美颜相机 迷你通信会议 迷你Web服务器 迷你Raft 等项目。本书针对每一个范例,首先给出代码实现和重要知识点,然后提出任务以使读者发挥创意,提升代码编写技能。 本书由浅入深,有趣有料,适合想提升代码编写水平的大学生、求职者、编程爱好者阅读,也适合有1~2年开发经验的程序员参考,还可以作为各类培训班的培训教材。
本书聚焦Java高并发编程基础知识,介绍Java多线程、线程池、内置锁、JMM、CAS、JUC、高并发设计模式等并发编程方面的核心原理和实战知识。 本书共10章。第1、2章剖析多线程、线程池的核心原理和实战应用,揭秘线程安全问题和Java内置锁的核心原理。第3、4章讲解CAS原理与JUC原子类、JMM的核心原理,揭秘CAS操作的弊端和两类规避措施,以及Java内存可见性和volatile关键字的底层知识。第5章讲解JUC显式锁的原理和各种显式锁的使用。第6章阐述JUC高并发的基础设施 AQS抽象同步器的核心原理。第7章介绍JUC容器类。第8~10章介绍常见的Java高并发设计模式的原理和使用。 本书既可以作为Java工程师、架构师的编程参考书,又可以作为参加互联网大厂面试、笔试的人员的学习参考书。
内容简介本书是Java并发编程领域公认的标准性著作,第1版自2015年出版以来,累计印刷23次,销售超过10万册,全网读者评论超过40000条,口碑爆棚。第2版在第1版的良好基础上,与时具进,反映了Java技术的最新发展;去芜存菁:处理了广大读者反馈的问题;博采众长:吸收了行业专家的宝贵建议;厚积薄发,融入了作者近8年在Java并发编程方面积累的新技术和新经验。新增和修订的内容超过50%,无论是理论、方法还是实践,都有了大幅度的提升。本书从并发编程的底层实现机制入手,围绕JDK源码、JVM、CPU等多角度详细介绍了设计Java并发程序的框架、原理、核心技术、设计模式与应用,同时辅以丰富的示例代码,使得开发人员能够更快地领悟Java并发编程的要领,利用Java平台的基础并发功能快速地构建大规模的并发应用。本书具体包含如下核心内容:?Java并发编程的
本书从动态代理模式、Reactor模式、三大限流策略等知识入手,深入浅出地剖析Spring Cloud Nginx系统架构的核心原理以及Web高并发开发技术。全书从基础设计模式和基础原理出发,理论与实战相结合,系统、详尽地介绍Spring Cloud Nginx高并发核心编程。 本书共10章。前6章剖析Feign高并发RPC的底层原理,解析Hystrix高性能配置的核心选项,阐述Hystrix滑动窗口的核心原理;后4章介绍Nginx的核心原理及其配置,并结合秒杀场景实现Spring Cloud秒杀、Spring Cloud Nginx Lua秒杀,为广大Java开发者提供一个全面学习高并发开发的实战案例。这些知识会为广大Java工程师解决后台开发中遇到的高并发、高性能问题打下坚实的技术基础。
本书从操作系统底层的IO原理入手讲解Java高并发核心编程知识,同时提供高性能开发的实战案例,是一本Java高并发编程的基础原理和实战图书。 本书共15章。第1~4章为高并发基础,浅显易懂地剖析高并发IO的底层原理,图文并茂地介绍Java异步回调模式,细致地讲解Reactor高性能模式。这些原理方面的基础知识非常重要,会为读者打下坚实的基础,也是日常开发Java后台应用时解决实际问题的金钥匙。第5~8章为Netty的原理和实战,是本书的重中之重,主要介绍高性能通信框架Netty、Netty的重要组件、单体IM的实战设计和模块实现。第9~12章从TCP、HTTP入手,介绍客户端与服务端、服务端与服务端之间的高性能HTTP通信和WebSocket通信。第13~15章对ZooKeeper、Curator API、Redis、Jedis API的使用进行详尽的说明,以提升读者设计和开发高并发、可扩展系统的能力。 本书兼具基础知识和实战
本书涵盖了完整的对高级UI特性、企业编程、网络、安全和Java强大的模块系统等内容的讨论。
《Java官方入门教程(第9版 Java 17)》针对Java SE 17做了全面细致的更新,将引导你轻松学习最新的核心Java编程技能。《Java官方入门教程(第9版 Java 17)》由畅销编程书作者Herbert Schildt撰写,开篇讲述基础知识,内容涉及如何创建、编译和运行Java程序。此后浓墨重彩地描述构成Java语言核心的关键字、语法和结构。本书还涵盖Java的一些更高级特性,如多线程编程、泛型、lambda表达式、模块、记录、密封类和Swing。另外,还介绍了Java的交互式编程工具JShell。本书通俗易懂、简明扼要、详略得当,成为全球数百万读者的选择。
《Java项目开发全程实录(第5版)》精选11个热门项目,涉及Java基础应用、数据库应用和Web开发三大Java重点应用方向,实用性非常强。这些项目包含:推箱子游戏、文件批处理助手、图片处理工坊、网络五子棋、单/双人坦克大战、数据图表分析小帮手、学生成绩管理系统、工作计划管理系统、仓储管理系统、明日科技门户网、九宫格记忆网。从软件工程的角度出发,本书按照项目开发的顺序,系统、全面地讲解每一个项目的开发实现过程。在结构上,每章的内容都围绕一个项目进行讲解,统一采用 开发背景 系统设计 技术准备 公共模块实现/各功能模块实现 项目运行 源码下载 的形式,完整地呈现每个项目的开发流程,让读者在完成项目后获得明确的成就感。这样的安排旨在帮助读者快速积累实际项目经验和技巧,助于读者早日实现就业目标。
《Java官方编程手册(第12版 Java 17)》针对Java SE 17全面更新内容,讲解了如何开发、编译、调试和运行Java程序。畅销书作者Herbert Schildt在本书中对整个Java语言进行了讲解,包括其语法、关键字和基础编程概念。书中还介绍了Java API库的关键部分,如I/O、集合框架、流库和并发实用工具,还讨论了Swing、Java Bean和servlet,并提供了大量示例来演示Java的实际应用。当然,本书也详细描述了Java语言的新增特性,如记录、密封类和switch表达式。Herbert Schildt采用他一贯的清晰、利落、务求准确的风格撰写本书,正是这种风格让他撰写的图书成为全世界数百万人的选择。 本书内容 数据类型、变量、数组和运算符 控制语句 类、对象和方法 方法重载和重写 继承 接口和包 异常处理 多线程编程 枚举、自动装箱和注解 I/O类 泛型 lambda表达式 模块 记录 密封类 文本块 switch表达式 instanceo
OpenCV作为一个应用广泛的开源计算机视觉库,正在受到越来越多的关注。目前OpenCV的各类教程基本上以Python和C 为主,基于Java的OpenCV书籍则少之又少,本书旨在弥补这一空白。 本书共13章,前4章是基础部分,包括OpenCV概述和安装配置、数字图像基础及图像基础操作等内容;第5到11章则包括了图像的几何变换、图像平滑、形态学操作、直方图、边缘检测与轮廓、霍夫变换、特征点检测和匹配等进阶内容;第12~13章属于提高内容,主要介绍机器学习和视频跟踪技术。 本书以通俗易懂的语言,图文并茂的讲解力图使初学者能够快速高效入门。本书面向的读者是包括高校学生在内的各类初学者、研究计算机视觉的业余爱好者及需要快速上手的专业人员。
本书从整个Java后端研发的视角,通过大量的案例分析日常开发过程中可能遇到的150多个坑点及其解决方案,并讨论一些best实践。这些坑点涵盖编码(不仅涉及Java语法层面,还涉及多线程、连接池、数据库索引、事务、日志、Spring框架等层面)、系统设计、代码安全等方面。本书在剖析这些坑点时还会讲解排查思路和相关工具的使用,让读者不仅能了解常见的坑点,还能具备一定的问题分析能力,以便日后自行排查更多的坑点。
《Java Web入门很轻松:微课超值版》是针对零基础读者编写的Java Web入门教材,侧重实战,结合流行、有趣的热点案例,详细地介绍了Java Web开发中的各项技术。全书分为17章,内容包括搭建Java Web开发环境、Web服务器的搭建、HTML与CSS网页开发基础、JavaScript脚本语言、JSP基础语法、JSP内置对象、JavaBean组件、Servlet技术、过滤器与监听器技术、Java Web中的数据库开发、表达式语言EL、XML技术、JSTL技术、Ajax技术的应用、Struts2框架的应用、Hibernate框架的应用。为了提高读者的项目开发能力,第17章以热点项目 银行业务管理系统 为例进一步讲述Java Web在实际项目中的应用。 《Java Web入门很轻松:微课超值版》提供了大量案例和完整的项目案例,不仅帮助初学者快速入门,还帮助其积累项目开发经验。读者通过微信扫码可以快速查看对应案例的视频操作,随时解决学习中的困
现在,Java开发可谓如日中天,并且Java安全开发是Java开发领域中的一个重要内容,每个Java开发人员都必须掌握。市面中的绝大多数密码学书籍都是针对C或C 的,本书重点介绍Java自带加解密函数的相关技术,以及密码学领域重要的开源库OpenSSL在Java开发中的应用。 本书共8章,主要内容包括密码学和Java概述、搭建Java密码开发环境、对称密码算法原理、利用JCA\JCE对称加解密、杂凑函数和HMAC、密码学中常见的编码格式、非对称算法RSA的加解密、数字签名技术等。本书内容非常详细,学习坡度非常平滑,循序渐进,就算没有密码学基础,也能从零开始到全面掌握。 本书面向的读者是Java开发人员、企业内转行计算机信息安全的工作人员、已有信息安全基础并想了解Java加解密新特性的人员。本书也可作为高等院校和培训机构计算机及相关专业师生的教学参考书。
每次揭示一个概念:通过带有范例的一系列小步骤,来逐渐解决某个复杂的问题。 告诉你如何描述问题、如何构思解决方案,如何开发、测试并调试程序。 学习输入与输出、决策与循环、类与方法、字符串与数组,以及递归与多态。 告诉你怎样选出合适的程序开发方法,以及如何运用重要的调试技能来排除程序故障。
本书从入门学习者的角度出发,通过通俗易懂的语言、丰富典型的实例,循序渐进地使读者在实践中学习Java编程知识,并提升自己的实际开发能力。全书共有17章,具体内容包括初识Java、Java语言基础、运算符与流程控制、面向对象基础、继承与多态、接口、异常处理、常用类、JSP基本语法、JSP内置对象、Servlet技术、过滤器和监听器、Struts2框架、Hibernate技术、Spring框架、Spring与Struts2、Hibernate框架的整合和Spring与SpringMVC、MyBatis框架的整合。书中的大部分知识都结合具体实例进行介绍,涉及的程序代码也大多给出了详细的注释,可以使读者轻松领会Java程序开发的精髓,快速提高开发技能。
在本书中,我们将带领您进入有趣且令人兴奋的计算机编程世界。在整个 旅程 中,我们将为您提供大量的解决问题的练习。毕竟,优秀的程序员需要善于解决问题。我们将展示如何使用Java程序实现问题解决方案。我们提供了大量的示例,简短的示例集中解释一个概念,而较长的示例更贴近真实的程序设计。我们以会话的方式呈现材料,以便于理解,让这个 旅程 更加愉快。读完这本书后,你应该可以成为一名熟练的Java程序员。 本书面向广泛的读者。它既适合标准的大学水平的 程序设计入门 课程或课程序列的学生,也适合有一些编程经验并想学习Java的行业从业者和大学水平的学生,本书还适合自学Java的学生。 本书特色: 1 教材的基石:解决问题 解决问题的能力是所有程序员必须掌握的核心技能。本书通过强调算法开发和程序设计两个关键元素讲解程序化地解
本书将提供 的Java和面向对象编程学习体验。利用这本书,你会通过一种独特的方法学习Java语言,它不是那种只介绍怎么做的使用手册,而是会帮助你成为一名 的程序员。通过各种谜题、探秘、与 Java对象的深入访谈,你会很快了解Java的基础和 知识,包括Lambda、流、泛型、线程、网络和让人心生畏惧的桌面GUI。如果你有其他编程语言的经验,本书会采用 多现代方法让你的大脑学习编程,能够 流畅、 快捷、 容易地读写和维护Java代码。 如果你读过Head First的书,就会知道这是一本怎样的书。它会采用专门为你的大脑设计的一种生动形象的方式娓娓道来。如果你还没有读过Head First的书,这本书肯定会让你喜出望外。利用这本书,你将通过多感观的学习体验来学习Java,能让你的大脑真正开动起来,而不是一味说教,让你昏昏欲睡
本书讲述Apache Flink大数据框架的原理,以及如果将Apache Flink应用于大数据的实时流处理、批处理、批流一体分析等各个场景。通过原理深入学习和实践示例、案例的学习应用,使读者了解并掌握Apache Flink流处理的框架的基本原理和技能,接近理论与实践的距离。 全书共分为8章,主要内容包括Flink架构与集群安装、Flink开发环境准备(基于IntelliJ IDEA和Maven)、开发Flink实时数据处理程序、Flink流数据分析、时间和水印概念、窗口操作、状态和容错、侧输出流、Flink流连接器、Flink流处理案例、开发Flink批数据处理程序、使用Table API进行数据处理、Flink on YARN、基于Flink构建批流一体数仓、基于Flink和Iceberg数据湖构建实时数仓。本书源码全部在Apache Flink 1.13.2上调试成功,所有示例和案例均提供Scala语言和Java语言两套API的实现(第8章除外),供读者参考。 本书系统讲解了Apach
《Java系统分析与架构设计》面向软件工程项目实战,内容按照软件项目的生命周期展开,分别为软件项目需求分析、软件项目架构设计(开发架构模式为主)、软件项目模块设计、软件项目的持久层设计(关系型物理表设计、Redis设计、MongoDB设计)、软件项目的部署等。 《Java系统分析与架构设计》共7章,第1章以大型企业项目 中国石油物资采购管理信息系统 为例,详细讲解需求分析技术,如流程图分解、UML用例图设计、UML状态图设计、概念模型分析等;第2章为 软件架构设计 ,讲解架构设计五视图、Java EE架构模式、微服务架构模式、Dubbo 3架构模式、MOM架构模式等内容,同时结合大型分布式项目 电影院综合票务管理平台 进行详细的架构设计示范;第3章为 项目模块设计 ,讲解UML类图、UML时序图设计方法,同时结合项目 新闻系统 与 物流管理系统 进行模块设
本书是一本讲解Java程序员面试笔试的实用工具书。在写法上,除了讲解如何解答Java程序员面试笔试问题以外,还引入了相关知识点辅以说明,让读者能够更加容易地理解和掌握。 本书囊括Java程序员面试笔试过程中的各类知识点。在内容广度上,搜集了近3年来几乎所有IT企业针对Java岗位的笔试面试涉及的知识点,包括但不限于Java核心知识点(容器、多线程和IO等)、Java Web(Struts、MyBatis、Kafka、Spring等)、数据库,所选择知识点均为企业招聘时所考查的知识点。在讲解的深度上,本书由浅入深,详细分析每一个知识点,并提炼归纳,同时,引入相关知识点,并对其进行深度剖析,让读者不仅能够理解每个知识点,还能在遇到相似问题的时候,也能游刃有余地解决,而这些内容很多是其他同类书籍所没有的。书中根据知识点进行分门别类,结构合理,条理清晰,便
Java语言是近二十年来*为流行的通用面向对象程序设计语言,当今程序几乎都采用图形用户界面(GUI)。本书以NetBeans IDE为开发工具,以Java语言基础知识和基本语法、Java GUI程序的可视化设计方法、*的Java SE 8和Java SE 9及Java SE 10等版本类库中有关的实用类的使用为主要内容,介绍Java面向对象程序设计方法及应用型Java GUI程序设计方法。 全书所有例题和习题都采用GUI,将Java语言的基本知识和语言机制与图形用户界面的设计方法有机结合起来,读者在学习Java语言的同时就能学会主流GUI程序的设计方法。本书从实用出发,强调利用现有类库和组件设计解决实际问题的程序,采用优秀的开发环境NetBeans IDE以及可视化Java GUI设计方法,以降低学习难度,提高学习效率。通过学习本书,读者可以较为轻松地掌握Java语言,快速具备完整的图形用户界面程序的设计开发能力。
本书系统地分析和介绍了Java并发领域,全书共12章,分为四个部分。部分为并发概述(第1章),这部分介绍并发的发展历史,激发读者的学习热情。第二部分为Java基础原理(第2~3章),这部分介绍并发模型的基础理论知识。第三部分为并发工具(第4~7章),这部分不仅从源码实现的原理上分析j.u.c包中提供的Java并发工具,还对组件的设计方式进行了探索。第四部分为Java实践(第8~12章),这部分深入浅出地分析了开源常见的并发框架,学习这部分知识可进一步提升并发编程的效率。
《Java程序设计(视频讲解版)(第6版)》从编程初学者的角度出发,用浅显易懂的语言,全面、系统地介绍了Java开发所需要的各种技术,简单、易学,既是一本入门教程,也是一本视频教程。全书共18章,结合大量中小案例和视频讲解,对Java语言的使用方法和编程技术进行了详细说明,并通过引导读者一步步操作,提高读者的动手能力,掌握良好的程序设计方法,并形成一定的编程思想。其中前两章主要对Java进行了简要介绍,如Java语言特色、Java程序的编译和执行、Java程序的组成要素等;第3~7章介绍了Java编程的基础知识,如变量、表达式、条件语句、循环语句、数组等;从第8章开始到第18章依次介绍了面向对象程序设计、对象的构造、字符串、继承、抽象类/接口/内部类、包、异常处理、多线程、数据的输入与输出、Java标准类库、用户图形界面。 《Java程序设
《Java从入门到项目实战(全程视频版)》是一本Java入门书,详细介绍了Java语言面向对象程序设计中的Java核心技术和编程技巧。全书分4篇共22章,其中第1篇为Java编程基础,介绍了Java历史、语言特点、开发环境、编程工具,程序基础概念,程序逻辑控制和方法等;第2篇为Java面向对象编程,介绍了类与对象、数组、String类、继承、抽象类与接口、类结构扩展、异常的捕获与处理、内部类;第3篇为Java应用编程,介绍了Eclipse开发工具、多线程编程、常用类库、I/O编程、反射机制、类集框架、网络编程、数据库编程;第4篇为Java底层编程,介绍了JUC并发编程和NIO编程。本书在知识点的介绍过程中辅以大量的图示,并配有大量的范例代码及详细的注释分析;另外本书还将Java教学与实战经验的知识点融入到 提示 注意 问答 等模块中,可让读者在学习过程中少走弯路,并快