初学者关于java中jvm内存中程序的运行过程

1.值类型变量存储和引用类型变量存储在内存存储的比较

栈:所用的变量都在栈中定义。

对象区:使用new创建的对象存储位置。

方法区:存储类的字节码数据。

内部过程1-3分别代表:

        1.将类的字节码加载到方法区,相当于模板作用。

        2.通过new关键字创建Student对象在对象区,并为对象的属性赋值。

        3.定义特定类型的变量在栈中,存储在对象区的对象的地址。

2.static(静态变量)在jvm内存中的运行过程

         4代表的是如何修改static语句内容:

                在由s1修改静态变量xx的值时,会根据存储的地址找到对象发现没有xx,会继续向上追溯,进行修改xx的值。因为静态变量是直接与类关联,在方法区储存,在内存中只有一份,被所有对象共享结果。所以s1改变了xx的值后,s2内关于xx的也会相应变化。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值