关注
1. JVM内存模型:JVM内存模型将运行时数据区域分为堆(Heap),用于存放对象实例,是垃圾回收的主要区域;方法区(Method Area),存储类信息、常量、静态变量等,JDK 8后被元空间(MetaSpace)替代;程序计数器(Program Counter Register),记录当前线程执行字节码的行号;虚拟机栈(Java Virtual Machine Stack),每个线程私有,存储局部变量表、操作数栈等;本地方法栈(Native Method Stack),为Native方法服务。各区域分工明确,共同保障Java程序的内存管理与运行。
2. 类加载过程,字节码加载过程:类加载过程分为加载、验证、准备、解析和初始化五个阶段。加载阶段负责通过类的全限定名获取字节码二进制流,并创建Class对象;验证阶段校验字节码文件的安全性和合法性;准备阶段为类变量分配内存并设置初始值;解析阶段将符号引用转为直接引用;初始化阶段执行类构造器 <clinit>() 方法,初始化静态变量和执行静态代码块。字节码加载属于加载阶段,通过类加载器(启动类加载器、扩展类加载器、应用程序类加载器)按双亲委派模型从文件系统、网络等途径获取字节码,确保类加载的安全性与唯一性 。
查看原帖
点赞 评论
牛客热帖
更多
正在热议
更多
# 我的实习收获 #
12731次浏览 258人参与
# 穿越回高考你还会选现在的专业吗 #
9333次浏览 147人参与
# 实习吐槽大会 #
15645次浏览 65人参与
# 我的租房踩坑经历 #
5298次浏览 104人参与
# 晒一晒你的工位 #
80114次浏览 279人参与
# 入职第三天,晒晒你的工位 #
31519次浏览 154人参与
# 你的办公桌上都有什么? #
6864次浏览 57人参与
# 提前批过来人的忠告 #
102265次浏览 1113人参与
# 你认为工作的意义是什么 #
144179次浏览 1013人参与
# 来选选带哪个offer回家过年 #
659756次浏览 5272人参与
# 工作压力大怎么缓解 #
78504次浏览 932人参与
# 高学历就一定能找到好工作吗? #
47364次浏览 585人参与
# 实习中的菜狗时刻 #
362210次浏览 3282人参与
# 今年形式下双非本找得到工作吗 #
138700次浏览 1055人参与
# 机械制造2023笔面经 #
115979次浏览 747人参与
# 你最满意的offer薪资是哪家公司? #
25518次浏览 131人参与
# 电网笔面经互助 #
33311次浏览 331人参与
# Offer比较,求稳定还是求发展 #
52443次浏览 248人参与
# 24届的你们现状如何了? #
69723次浏览 399人参与
# 选完offer后,你后悔学机械吗? #
28900次浏览 159人参与