![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
文章平均质量分 64
子夜2104
这个作者很懒,什么都没留下…
展开
-
2021-6-20-JVM堆内存分配
一张图展示 JVM 内存分配记录下几个主要的参数设置:-Xmx :堆内存最大值,默认为物理内存的 1/4。-Xmx和-XX:MaxHeapSize是等价的。-Xms:堆内存初始值,默认为物理内存的 1/64,这里包括初始化和最小值的设置,如果想分别设置,可以通过参数 -XX:InitialHeapSize设置堆内存的初始值;可以通过参数 -XX:MinHeapSize设置堆内存的最小值。-Xmn:设置年轻代(或者叫Young区)的大小,这里包括初始化和最大值的设置,如果想分别设置,可以通过参数原创 2021-06-20 13:10:48 · 202 阅读 · 0 评论 -
自定义类加载器
假设,现在有一个Hello.xlass 文件,里面有一个hello()方法,但是此文件内容是一个所有字节(x=255-x)被处理后的文件,那么你应该如何正确读取这个文件呢?这里就需要自定义类加载器,来加载这个文件了。首先,我们还是看一下Java的类加载过程。类的生命周期1.加载:找Class文件2.验证:验证格式和依赖3.准备:为类变量(static修饰的变量)分配内存并设置初始零值。注意,此时实例变量还没有分配内存。4.解析:符号解析为引用5.初始化:构造器,实例变量分配内存并赋值,静态变原创 2021-06-19 15:56:52 · 357 阅读 · 0 评论 -
使用Java字节码分析四则运算
下面展示了一个简单的 Java类,进行了四则运算。public class Hello{ public static void main(String[] args){ int a = 1; int b = 2 + a; int c = 3 * b; int d = c - a; float e = d / 2f; System.out.println(e); }}通过命令 javac -g Hello.java 进行编译,然后通过命令 java Hello 运原创 2021-06-19 14:19:22 · 240 阅读 · 0 评论