一句话说明java内存模型堆栈方法区分别存储什么数据及实际开发意义

    解释一下为什么本人总喜欢用一句话说明,因为本人着重实用主义,学的理论够用即可,讲太多实际根本用不到,时间长一点还忘了,着实是亏本的买卖,一句话说到点上,够实际应用,不耗无谓的时间,这才是最高性价比,毕竟时间有限,等到涉及到具体的细节,咱再回过头查下资料也不耽误个啥;下面来解说标题的问题,你可以想象一下,jvm运行程序的时候,先去加载一个类,然后调类里面的方法,类和方法里有各种成员变量,局部变量以及新建的对象和数组,常量等等,方法执行完成后垃圾回收;那么这个类属于一个线程的公共资源,和static修饰的公共变量一起还有类的常量,这些公共资源不是新建的,是事先就申明好的,这种是存在于静态区里,也就是方法区里;而程序运行时新建的对象和数组,也属于公共资源,但是是新建的,这种存在于堆中;那么,代码运行时,调用的各个方法名,方法参数,及局部变量等等,这些就存在于栈中,你可以想象每个main方法是一个线程,占用一个栈,每个线程之间即栈之间是相互合隔离互不干扰的,但是它们又有部分共享的资源,比如类和static成员变量等;这个知识点实际开发的时候没啥用处,也没有实际使用案例,但是这个东西不懂,又仿佛开发没有了溯源一样的,所以,了解清楚,实用性不强但对知识体系构建很有帮助;以上为个人的理解,由于这个概念很抽象,每次读完,过段时间灾难性遗忘,所以特此形象化家常化实用话一点描述,方便记忆,理论够用即可,大家发现不准确之处,欢迎翻阅具体资料予以佐证~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值