JVM知识点学习-1

学习视频:狂神说Java

类加载器和双亲委派机制

类加载器

作用:加载Class文件

流程:这里的名字car1。。在栈里面,但是数据在堆里面

类加载器的几个类型:

虚拟机自带的类加载器;启动类(根BootStrapClassLoader)加载器;扩展类(extClassLoader)加载器;应用程序(AppClassLoader)加载器;他是从应用程序加载器一层一层往上找的;

双亲委派机制

概念:每当一个类收到了类加载请求,他首先不会自己尝试加载此类,而是把这个请求委托给父类去完成,每一层次的类加载器都是如此,因此所有的类加载请求都应该传送到启动类加载器(BootstrapClassLoader),只有当父类加载器反馈自己无法完成这个请求的时候(在它的加载路径下没有找到所需加载的Class),子类才会尝试自己去加载;

优势:1.沙箱安全机制:比如自己写的String.class不会被加载,这样可以防止核心库被篡改;

2.避免类的重复加载,当父类ClassLoader已经加载了该类的时候,就不需要子类加载器再去加载;

类加载器生命周期:

沙箱安全机制:

Native、方法区

native:凡是带了native的方法,说明Java的范围达不到了,需要调用底层c语言的库;

使用了native后会进入本地方法栈,调用本地接口JNI;

JNI的作用:扩展Java的使用,可以融合不同的语言为Java所用;

PC寄存器:也叫程序计数器,每个线程都有一个程序计数器,他是线程私有的,就是一个指针,指向方法区的字节码,是一块非常小的内存空间;

方法区:

深入理解栈

栈的执行原理:

栈、堆、方法区的关系

走进HotSpot和堆

详细分析新生区和永久区和堆内存调优

使用Jpofiler工具分析oom的原因

出现错误时打dump文件,出现这个错误时会将dump文件到src同级目录

相关推荐
焦糖玛奇朵婷8 分钟前
就医陪诊小程序|从软件开发视角看实用度✨
java·大数据·jvm·算法·小程序
zhangrelay10 分钟前
如何让手机电脑流畅飞起低碳节能性能拉满-软件安装篇-ESR-Extended Support Release-延长支持版-LTS
linux·运维·笔记·学习
岳轩子14 分钟前
jvm学习 引入 第一晚
jvm·学习
胡西风_foxww25 分钟前
学习python人工智能路径及资源
人工智能·python·学习·路径·资源·书籍·路线
好奇龙猫35 分钟前
【大学院-筆記試験練習:线性代数和数据结构(17)】
数据结构·学习·线性代数
承渊政道1 小时前
C++学习之旅【C++拓展学习之反向迭代器实现、计算器实现以及逆波兰表达式】
c语言·开发语言·c++·学习·visual studio
licheng99671 小时前
工具、测试与部署
jvm·数据库·python
爱吃泡芙的小白白1 小时前
使用Cursor来进行连接SSH远程主机中出现的问题(自用)
服务器·学习·ssh·cursor
●VON1 小时前
Flutter for OpenHarmony:基于选择模式状态机与原子批量更新的 TodoList 批量操作子系统实现
学习·flutter·ui·openharmony·von
川西胖墩墩1 小时前
教育智能化:自适应学习与知识图谱构建
人工智能·学习·知识图谱