关注
1. JVM内存模型:JVM内存模型将运行时数据区域分为堆(Heap),用于存放对象实例,是垃圾回收的主要区域;方法区(Method Area),存储类信息、常量、静态变量等,JDK 8后被元空间(MetaSpace)替代;程序计数器(Program Counter Register),记录当前线程执行字节码的行号;虚拟机栈(Java Virtual Machine Stack),每个线程私有,存储局部变量表、操作数栈等;本地方法栈(Native Method Stack),为Native方法服务。各区域分工明确,共同保障Java程序的内存管理与运行。
2. 类加载过程,字节码加载过程:类加载过程分为加载、验证、准备、解析和初始化五个阶段。加载阶段负责通过类的全限定名获取字节码二进制流,并创建Class对象;验证阶段校验字节码文件的安全性和合法性;准备阶段为类变量分配内存并设置初始值;解析阶段将符号引用转为直接引用;初始化阶段执行类构造器 <clinit>() 方法,初始化静态变量和执行静态代码块。字节码加载属于加载阶段,通过类加载器(启动类加载器、扩展类加载器、应用程序类加载器)按双亲委派模型从文件系统、网络等途径获取字节码,确保类加载的安全性与唯一性 。
查看原帖
点赞 评论
相关推荐

点赞 评论 收藏
分享

点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 秋招笔面试记录 #
225906次浏览 3776人参与
# 我心目中的理想工作是这样的 #
74524次浏览 858人参与
# 如果工作一直消耗情绪还要继续做吗 #
7190次浏览 57人参与
# 牛客周边新品开箱 #
8167次浏览 86人参与
# 晒出你年味最浓的照片 #
18940次浏览 147人参与
# 假如你的老板掉河里,你的工作能为他做什么 #
32942次浏览 386人参与
# 今年春节,家人对你说的最多的话是什么? #
15706次浏览 120人参与
# 如果公司给你放一天假,你会怎么度过? #
20505次浏览 134人参与
# 毕业季,你想好怎么跟生活对线了吗? #
237369次浏览 3790人参与
# 给26届的秋招建议 #
46275次浏览 1158人参与
# 在职场上,你最讨厌什么样的同事 #
28764次浏览 212人参与
# 扒一扒那些奇葩实习经历 #
72928次浏览 942人参与
# 秋招投递记录 #
29646次浏览 324人参与
# 我的秋招“寄”录 #
51327次浏览 646人参与
# 辞职之后最想做的一件事 #
21866次浏览 226人参与
# 校招第一份工作你干了多久? #
100276次浏览 442人参与
# 比亚迪求职进展汇总 #
753172次浏览 3104人参与
# 饿了么求职进展汇总 #
65816次浏览 640人参与
# 实习的内耗时刻 #
65384次浏览 689人参与
# 如果校招重来我最想改变的是 #
281708次浏览 2916人参与