JVM
文章平均质量分 83
Leon_coding
年糕爸爸码代码——211毕业科班生的程序员之路
展开
-
JVM ——之内存增强分析
我们可以看到这段代码和上面不同的是,StringBuffer这个对象,并没有外部的引用或指向,只是在方法内部构建完成后,返回的是String类型的对象,所以StringBuffer就是未发生逃逸的对象,它就会被分配在栈内存,而不是堆内存中,当然这只是举个例子,并不是实际中的应用。我们需要掌握的是这种思想,当我们编写代码,或者优化代码时,要尽可能的考虑到逃逸问题,因为分配在栈内存中的对象,方法结束后会自动销毁,无需调用GC,可以极大的提高系统的性能。开发中能在方法内部应用对象的,就尽量控制在内部。...原创 2022-08-10 13:56:41 · 254 阅读 · 0 评论 -
JVM中的类加载过程分析——1.初识类加载步骤
说明:验证阶段是非常重要的,但不是必须的,它对程序运行期没有影响,如果所引用。1) 文件格式的验证(魔数,版本号,常量池,访问标志,当前类索引,另外,一个已经加载的类被卸载的几率很小,至少被卸载的时间是不确定的,假如需要。解析阶段是虚拟机将常量池内的符号引用替换为直接引用的过程,此阶段为类加载的最后一个阶段,这个阶段的 JVM。将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构。加载、验证、准备和初始化发生的顺序是确定的,而解析阶段则不一定。文件的字节流中包含的信息符合当前虚拟机的要求,...原创 2022-08-06 11:22:44 · 196 阅读 · 0 评论 -
JVM中的类加载过程分析——2.初识类加载方式
我们带着这3个问题去认识我们Java中的类加载器,平时你是感觉不到它的存在的,但是它又确实是存在而且不可或缺的。如果没有它,我们的类就无法正常运行加载。我们观察以下代码:static{}}//通过类型定义变量clsA 观察是否加载ClassA}}我们可以看到没有任何控制台输出,也就证明是没有加载ClassA这个类的。.........原创 2022-08-06 11:05:22 · 311 阅读 · 0 评论 -
JVM相关工具的使用——JvisualVM
JVisualVM 是 JDK 自带的内存及性能检测工具,路径在%JAVA_HOME%/bin 下面。双击 jvisualvm.exe 或者 win + R 输入 cmd,然后进入命令行界面,再输入 jvisualvm即可打开软件。原创 2022-08-05 09:58:54 · 2011 阅读 · 0 评论