Java书籍
文章平均质量分 87
lyw4631
这个作者很懒,什么都没留下…
展开
-
《Java并发编程实战》【第四部分 高级主题】
文章目录第13章 显示锁第14章 构建自定义的同步工具第15章 原子变量与非阻塞同步机制第16章 Java内存模型第13章 显示锁第14章 构建自定义的同步工具第15章 原子变量与非阻塞同步机制第16章 Java内存模型...原创 2022-03-09 10:55:20 · 400 阅读 · 0 评论 -
《Java并发编程实战》【第三部分 活跃性、性能与测试】
文章目录第10章 避免活跃性危险10.1 死锁10.1.1 锁顺序死锁10.1.2 动态的锁顺序死锁10.1.3 在协作对象之间发生的死锁10.1.4 开放调用10.1.5 资源死锁10.2 死锁的避免与诊断10.3 其他活跃性问题第11章 性能与可伸缩性第12章 并发程序的测试第10章 避免活跃性危险 在安全性与活跃性之间通常存在着某种制衡。我们使用加锁机制来确保线程安全,但如果过度地使用加锁,则可能导致锁顺序死锁(Lock-Ordering Deadlock)。同样,我们使用原创 2022-02-28 09:51:41 · 1192 阅读 · 0 评论 -
《Java并发编程实战》【第二部分 结构化并发应用程序】
文章目录第6章 任务执行6.1 在线程中执行任务6.1.1 串行的执行任务6.1.2 显式地为任务创建线程6.1.3 无限制创建线程的不足6.2 Executor框架6.3 线程池第7章 取消与关闭第8章 线程池的使用第9章 图形用户界面应用程序第6章 任务执行6.1 在线程中执行任务6.1.1 串行的执行任务6.1.2 显式地为任务创建线程6.1.3 无限制创建线程的不足6.2 Executor框架6.3 线程池第7章 取消与关闭第8章 线程池的使用第9章 图形用户界面应用程序&nb原创 2022-02-11 22:05:40 · 802 阅读 · 0 评论 -
《Java并发编程实战》【第一部分 基础知识】
文章目录第1章 简介1.1 并发简史1.2 线程的优势1.2.1 发挥多处理器的强大能力1.2.2 建模的简单性1.2.3 异步事件的简化处理1.2.4 响应更灵敏的用户界面1.3 线程带来的风险1.3.1 安全性问题1.3.2 活跃性问题1.3.3 性能问题1.4 线程无处不在第一部分 基础知识第2章 线程安全性第3章 对象的共享第4章 对象的组合第5章 基础构建模块第二部分 结构化并发应用程序第6章 任务执行第7章 取消与关闭第8章 线程池的使用第9章 图形用户界面应用程序第三部分 活跃性、性能与测试第原创 2022-01-30 23:00:50 · 1719 阅读 · 0 评论 -
第 3 章 程序的机器级表示
文章目录第 3 章 程序的机器级表示3.1 历史观点3.2 程序编码3.3 数据格式3.4 访问信息3.5 算数和逻辑操作3.6 控制3.7 过程3.8 数组分配和访问3.9 异数的数据结构3.10 在机器级程序中将程序与控制结合起来3.11 浮点代码3.12 小结参考文献说明家庭作业练习题答案第 3 章 程序的机器级表示 3.1 历史观点&nbs原创 2021-09-16 23:29:37 · 409 阅读 · 0 评论 -
第一部分 程序和执行
文章目录第一部分 程序和执行第 2 章 信息的表示和处理第 3 章 程序的机器级表示第 4 章 处理器体系结构第 5 章 优化程序性能第 6 章 存储器层次结构第一部分 程序和执行 我们对计算机系统的搜索是从学习计算机本身开始的,它由处理器和存储器子系统组成。在核心部分,我们需要方法来表示基本数据类型,比如 整数 和 实数 运算的近似值。然后,我们考虑机器级指令如何操作这样的数据,以及编译器又如何将 C 程序翻译成这样的指令。接下来,研究几种实现处理器的方法,帮助我们更好的了解原创 2021-09-05 18:06:07 · 137 阅读 · 0 评论 -
第一章 计算机系统漫游
第一章 计算机系统漫游第一章 计算机系统漫游1.11.21.31.41.51.61.71.81.91.10第一章 计算机系统漫游 计算机系统是由硬件和系统软件组成的,它们共同工作来运行应用程序。虽然系统的具体实现随着时间不断变化,但是系统内在的概念并没有改变。所有计算机都由相似的硬件和软件组成,它们又执行着相似的功能。一些程序员希望了解这些组件是如何工作的,以及,这些组件是如何影响程序的正确性和性能的,以此来提高自身的技能。本书便是为这些读者而写的。原创 2021-09-01 15:57:24 · 270 阅读 · 0 评论 -
深入理解计算机系统(原书第三版)
文章目录第一章 计算机系统漫游第一部分 程序结构和执行第二部分 在系统上运行程序第三部分 程序间的交流和通信第一章 计算机系统漫游第一部分 程序结构和执行第二部分 在系统上运行程序第三部分 程序间的交流和通信...原创 2021-09-01 15:41:37 · 357 阅读 · 0 评论 -
第10章 前端编译与优化
文章目录10.1 概述10.2 Javac编译器10.3 Java语法糖的味道10.4 实战:插入式注解处理器10.5 本章小结第10章 前端编译与优化 从计算机程序出现的第一天起,对效率的追逐就是程序员天生的坚定信仰,这个过程犹如一场没有终点、永不停歇的F1方程式竞赛,程序员是车手,技术平台则是在赛道上飞驰的赛车。10.1 概述 10.2 Javac编译器10.3 Java语法糖的味道10.4 实战:插入式注解处理器10.5 本章小结...原创 2021-08-31 10:21:54 · 191 阅读 · 0 评论 -
第9章 类加载及执行子系统的案例与实战
文章目录9.1 概述9.2 案例分析9.2.1 Tomcat:正统的类加载器架构9.2. 2 OSGi:灵活的类加载器架构9.2.3 字节码生成技术与动态代理的实现9.2.4 Backport工具:Java的时光机器9.3 实战:自己动手实现远程执行功能9.4 本章小结第9章 类加载及执行子系统的案例与实战 代码编译的结果从本地机器码转变为字节码,是存储格式发展的一小步,却是编程语言发展的一大步。9.1 概述 在Class文件格式与执行引擎这部分里,用户的程序能直接参与的内容并不太多,Cla原创 2021-08-12 17:29:20 · 305 阅读 · 0 评论 -
第8章 虚拟机字节码执行引擎
文章目录8.1 概述8.2 运行时栈侦结构8.2.1 布局变量表8.2.2 操作数栈8.2.3 动态连接8.2.4 方法返回地址8.2.5 附加信息8.3 方法调用8.3.1 解析8.3.2 分派8.4 动态类型语言支持8.5 基于栈的字节码解释执行引擎8.6 本章小结第8章 虚拟机字节码执行引擎 代码编译的结果从本地机器码转变为字节码,是存储格式发展的一小步,却是编程语言发展的一大步。8.1 概述 8.2 运行时栈侦结构 8.2.1 布局变量表 8.2.2 操作数栈原创 2021-08-04 16:08:42 · 238 阅读 · 0 评论 -
第7章 虚拟机类加载机制
文章目录7.1 概述7.2 类加载的时机7.37.47.57.6第7章 虚拟机类加载机制 代码编译的结果从本地机器码转变为字节码,是存储格式发展的一小步,却是编程语言发展的一大步。7.1 概述 上一章我们学习了Class文件存储格式的具体细节,在Class文件中描述的各类信息,最终都需要加载到虚拟机中之后才能被运行和使用。而虚拟机如何加载这些Class文件,Class文件中的信息进入到虚拟机后会发生什么变化,这些都是本章将要讲解的内容。 Java虚拟机把描述类的数据从Class文件加载到内存原创 2021-08-02 10:24:08 · 244 阅读 · 0 评论 -
第6章 类文件结构
文章目录6.1 概述6.2 无关性的基石6.3 Class文件的结构6.4 字节码指令简介6.5 公有设计,私有实现6.6 Class文件的发展6.7 本章小结第6章 类文件结构 代码编译的结果从本地机器码转变为字节码,是存储格式发展的一小步,却是编程语言发展的一大步。6.1 概述6.2 无关性的基石6.3 Class文件的结构6.4 字节码指令简介6.5 公有设计,私有实现6.6 Class文件的发展6.7 本章小结...原创 2021-07-26 09:57:08 · 372 阅读 · 0 评论 -
第3章 垃圾收集器与内存分配策略
文章目录第3章 垃圾收集器与内存分配策略Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的高墙,墙外面的人想进去,墙里面的人却想出来。3.1 概述 说起垃圾收集(Garbage Collection,下文简称GC),有不少人把这项技术当作Java语言的伴生产物。事实上,垃圾收集的历史远远比Java久远,在1960年诞生于麻省理工学院的Lisp是第一门开始使用内存动态分配和垃圾收集技术的语言。当Lisp还在胚胎时期时,其作者John McCarthy就思考过垃圾收集需要完成的三件事情原创 2021-07-21 14:11:37 · 352 阅读 · 1 评论 -
第2章 Java内存区域与内存溢出异常
文章目录第2章 Java内存区域与内存溢出异常2.1 概述2.2 运行时数据区域2.3 Hotspot虚拟机对象探秘2.4 实战:OutOfMemoryError异常2.5 小结第2章 Java内存区域与内存溢出异常2.1 概述 对于从事C、C++程序开发的开发人员来说,在内存管理领域,他们既是拥有最高权力的“皇帝”,也是从事最基础工作的劳动人名民——既拥有每个对象的“所有权”,又担负着每个对象生命从开始到终结的维护责任。 对于Java程序员来说,在虚拟机自动内存管理机制的帮助下,不再需要原创 2021-05-20 14:48:50 · 235 阅读 · 0 评论 -
深入理解Java虚拟机: JVM高级特性与最佳实践 (第3版)
系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供原创 2021-05-20 14:18:46 · 378 阅读 · 1 评论 -
Effective Java 第三章 对于所有对象都通用的方法
文章目录第三章 对于所有对象都通用的方法第10条 覆盖equals时请遵守通用约定第11条 覆盖equals时总要覆盖hashCode第12条 始终覆盖toString第13条 谨慎的覆盖clone第14条 考虑实现Comparable接口第三章 对于所有对象都通用的方法 尽管Object是一个具体类,但设计它主要是为了扩展。它所有的非final方法(equals, hashCode,toString,clone和finalize)都有明确的通用约定(general contract),因为它们是原创 2021-05-18 12:00:39 · 178 阅读 · 0 评论 -
Effective Java 第二章 创建和销毁对象
Effective Java由于书本内容太枯燥,看不下去,只能对着抄。。加油吧ヾ(◍°∇°◍)ノ゙文章目录第二章 创建和销毁对象第1条 用静态工厂方法代替构造器第2条 遇到多个构造器参数时要考虑构建器第3条 用私有构造器或者枚举类型强化Singleton属性第4条 通过私有构造器强化不可实例化的能力第5条 优先考虑依赖注入来引用子源第6条 避免创建不必要的对象第7条 消除过期的对象引用第8条 避免使用终结方法和清除方法第9条 try-with-resources优先于try-finally第二章原创 2021-02-19 15:32:20 · 365 阅读 · 0 评论 -
Effective Java
Effective Java由于书本内容太枯燥,看不下去,只能对着抄。。加油ヾ(◍°∇°◍)ノ゙文章目录第一章 引言第二章 创建和销毁对象第1条 用静态工厂方法代替构造器第2条 遇到多个构造器参数时要考虑构建器第3条 用私有构造器或者枚举类型强化Singleton属性第4条 通过私有构造器强化不可实例化的能力第5条 优先考虑依赖注入来引用子源第6条 避免创建不必要的对象第7条 消除过期的对象引用第8条 避免使用终结方法和清除方法第9条 try-with-resources优先于try-finally第原创 2021-02-18 17:22:06 · 317 阅读 · 2 评论