![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
文章平均质量分 77
weixin_42127238
这个作者很懒,什么都没留下…
展开
-
java 对象的创建过程,对象的内存布局
1.检测类是否被加载: 当虚拟机执行到new时,会先去常量池中查找这个类的符号引用。如果能找到符号引用,说明此类已经被加载到方法区(方法区存储虚拟机已经加载的类的信息),可以继续执行;如果找不到符号引用,就会使用类加载器执行类的加载过程,类加载完成后继续执行。 2.为对象分配内存: 类加载完成以后,虚拟机就开始为对象分配内存,此时所需内存的大小就已经确定了。只需要在堆上分配所需要的内存即可。 具体的分配内存有两种情况:第一种情况是内存空间绝对规整,第二种情况是内存空间是不连续的。 对于内存绝对规整的情况相.转载 2021-02-18 15:52:28 · 82 阅读 · 0 评论 -
java类的全加载过程
类的加载过程步骤 类的加载过程主要分为3步 1、加载(loading) 2、链接 linking(链接分为3小步 1、校验 ()2、准备 3、解析) 3、初始化 加载 双亲委派 双亲委派一次从下至上依次调用,自定义加载器→AppClassLoader→ExtClassLoader→Bootstrap classLoader 在调用到最高层没有的时候,再依次向下调用,如果还没有找到类,则会报ClassNotFoundException 注意:双亲委派的上一层是父加载器,通过引用调用parent方法属性,而不是原创 2021-02-18 14:38:48 · 89 阅读 · 0 评论