news 2026/7/9 13:59:19

实习面试题-Java 虚拟机面试题

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
实习面试题-Java 虚拟机面试题

1.Java 中有哪些垃圾回收算法?

回答重点

关于垃圾回收算法,其实不用死记硬背,它们本质上就是处理内存碎片的几种不同策略

你就想象成我们在打扫房间,主要有这么三种流派:

1)标记-清除算法(Mark-Sweep),这是最基础的流派:

它的逻辑很简单:先遍历一遍,把有用的东西打个勾(标记),然后把没打勾的垃圾直接扔掉(清除)。 但这有个大坑,就是内存碎片

你想啊,你把垃圾扔了,空出来的地方东一块西一块的,像蜂窝煤一样。下次想放个大件家具(大对象),明明总空间够,但就是找不到一块完整的地儿,这就很尴尬。

![images](https://i-blog.csdnimg.cn/img_convert/148c79792957c11ce96c380ed737ad17.png) 100%

为了解决碎片问题,就有了复制算法

2)复制算法(Copying)

它把内存一分为二,平时只用一半。回收的时候,把活着的对象全部复制到另一半去,整整齐齐排好,然后把原来那一半直接清空。

好处是快,而且绝对没有碎片。坏处也很明显,太浪费空间了,得空着一半地盘不能用。

![images](https://i-blog.csdnimg.cn/img_convert/1e17702bd7f96e6b1969891467352d24.png) 100%

不过,在 Java 的新生代里,因为绝大部分对象都是

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/10 11:34:43

事件触发机制下的四容水箱系统控制和Matlab仿真 针对离散事件触发机制下的四容水箱系统控制和...

事件触发机制下的四容水箱系统控制和Matlab仿真 针对离散事件触发机制下的四容水箱系统控制和Matlab仿真研究,从整个系统控制架构的角度出发,对数据传输方案、控制方法和实验平台进行了较为系统的研究。 本文的研究重点是离散事件触发机制下的四容水箱控…

作者头像 李华
网站建设 2026/7/10 11:10:58

【JavaSE】十三、枚举类Enum Lambda表达式 列表排序常见写法

文章目录Ⅰ. 枚举类定义与使用Ⅱ. 枚举类的构造方法默认就是 private总结Ⅲ. 什么是 Lambda 表达式Ⅳ. Lambda 表达式的使用列表排序的常用写法1. **基本比较(数值)**Integer.compare(a, b)2. **方法引用 ** **Comparator.comparing**3. **多条件排序**4…

作者头像 李华
网站建设 2026/7/10 11:35:09

concurrent.futures 全面教程:常用 API 串联与实战指南

大家好,我是jobleap.cn的小九。 concurrent.futures 是 Python 标准库中用于简化并发编程的核心模块,基于抽象的 Executor 类封装了 ThreadPoolExecutor(线程池)和 ProcessPoolExecutor(进程池)&#xff0c…

作者头像 李华
网站建设 2026/7/9 19:20:10

Dijkstra - 单源最短路径

算法:Dijkstra [堆优化(优先队列)]求解:单源最短路径核心思想:贪心,每次从未确定最短距离的节点中,选择距离源点最近的节点,用该节点更新其邻接点的距离。这是一个堆优化的Dijkstra最短路径算法实现。让我为您详细解析每个部分:一、数据结构解析1. 邻接表…

作者头像 李华
网站建设 2026/7/10 11:31:45

亲手搭建原子级观测设备:OpenSTM终极指南

亲手搭建原子级观测设备:OpenSTM终极指南 【免费下载链接】OpenSTM OpenSTM - 一个扫描隧道显微镜项目,可能用于科研或精密工程领域。 项目地址: https://gitcode.com/gh_mirrors/op/OpenSTM 想要亲眼看到原子的排列吗?现在&#xff0…

作者头像 李华