类加载过程

转载:https://blog.csdn.net/congcongxianshen/article/details/90105854?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522158414162719195162552611%2522%252C%2522scm%2522%253A%252220140713.130056874..%2522%257D&request_id=158414162719195162552611&biz_id=0&utm_source=distribute.pc_search_result.none-task

类加载过程:

实例是实例,类是类,不可混为一谈。类的加载过程和实例信息没有任何关系,仅与类有关系

 

类的加载过程指的是:将类的信息加载到内存,第一次使用这个类(创建类的实例,或者调用静态方法or静态变量)的时候才会加载,并且看父类是否已加载。java中的类是动态加载的,而且只加载一次。

 

一个类的所有信息如下:

å¨è¿éæå¥å¾çæè¿°

类加载过程:

  1. 在方法区分配保存类信息的内存空间
  2. 给变量赋值
  3. 加载父类
  4. 设置父子关系
  5. 执行类初始化代码

类初始化代码包含:类变量赋值语句+static{}静态代码块2部分组成。是先执行父类的,再执行子类,不过,在执行父类类初始化代码的时候,子类类变量是有默认值(步骤2已执行)

栈:存放方法的局部变量

堆:用来存放对象

方法区:存放类信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值