写点什么

7 天拿到阿里 Java 岗位 offer,2021 腾讯 Java 面试题精选

用户头像
极客开源
关注
发布于: 刚刚

三、堆空间

基本描述


JVM 启动时创建堆区,是内存管理的核心区,通常情况下也是最大的内存空间,是被所有线程共享的,几乎所有的对象实例都要在堆中分配内存,所以这里也是垃圾回收的重点空间。


堆栈关系



栈是 JVM 运行时的单位,堆是存储单位,当栈中方法结束,相关对象失去所有引用后,不会马上被移除堆空间,要等到垃圾收集器运行的时候。

四、虚拟机栈

虚拟机栈(Java 栈)在每个线程创建时都会生成一个虚拟机栈,栈的内部是一个个栈帧单元,对应 Java 方法的调用,其生命周期和线程周期保持一致。用来存储方法的局部遍历,部分执行结果,方法的调用和返回。



栈帧是方法执行的数据集,维持执行过程中的各种数据信息,执行的方法依次入栈,栈顶存放当前要执行的方法,执行结束后出栈,对于栈没有垃圾回收问题。

五、程序计数器

基本描述


JVM 中程序计数寄存器用来存储下一条将要执行指令的地址,执行引擎获取到指令后进行执行,是线程私有的。它可以看作是当前线程所执行的字节码的行号指示器。



前后关系


线程在获取 CPU 的时间段内执行代码,但是线程随时可能没有执行完就被挂起,等到线程 A 再次获取 CPU 执行时,CPU 得知道执行到线程 A 的哪一个指令,程序计数器会存储该动作。

六、本地方法栈

本地方法栈与虚拟机栈所起到的作用是类似的,虚拟机栈为虚拟机执行 Java 方法,本地方法栈管理虚拟机使用到的 本地方法,在虚拟机规范中对本地方法栈中方法使用的语言、使用方式与数据结构并没有强制规定,因此具体的虚拟机可以自由实现它。HotSpot 虚拟机直接就把本地方法栈和虚拟机栈合二为一。

分享

首先分享一份学习大纲,内容较多,涵盖了互联网行业所有的流行以及核心技术,以截图形式分享:


(亿级流量性能调优实战+一线大厂分布式实战+架构师筑基必备技能+设计思想开源框架解读+性能直线提升架构技术+高效存储让项目性能起飞+分布式扩展到微服务架构.........实在是太多了)


其次分享一些技术知识,以截图形式分享一部分:


Tomcat 架构解析:



算法训练+高分宝典:



Spring Cloud+Docker 微服务实战:



最后分享一波面试资料:


切莫死记硬背,小心面试官直接让你出门右拐


1000 道互联网 Java 面试题:



Java 高级架构面试知识整理:



本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

用户头像

极客开源

关注

还未添加个人签名 2021.03.18 加入

还未添加个人简介

评论

发布
暂无评论
7天拿到阿里Java岗位offer,2021腾讯Java面试题精选