肥宅钓鱼网
当前位置: 首页 钓鱼百科

深入理解jvm知识点(jvm学习记录二)

时间:2023-07-01 作者: 小编 阅读量: 1 栏目名: 钓鱼百科

深入理解jvm知识点?虚拟机栈都知道是运行咱们方法的,实际上他的里面放了一个一个的栈针,同时每一个线程中都会独有一份虚拟机栈的内存空间。我们的每一个栈针中存放的又是什么呢?因为我们java代码在服务器运行,然而具体到jvm中就是每一个栈针。同时我们的局部变量表是一个有序的数组,他的第一个元素放的使我们的this,然后就是一次放我们的定义好的各种变量。但是这样命名却是也没有问题。

深入理解jvm知识点?1.先从最不熟悉的来,虚拟机栈虚拟机栈都知道是运行咱们方法的,实际上他的里面放了一个一个的栈针,同时每一个线程中都会独有一份虚拟机栈的内存空间这是为什么呢?可以想一想,如何不是每个线程独有一份,那栈里面的栈针(每一个栈针就是一个方法)谁知道是哪个线程的,jvm也不是上帝(QUQ).所以我们的jvm大佬在设计jvm的时候每一个线程都会有一根栈资源和对应的程序计数器(各自记录自己的垃圾代码执行到哪里了),下面我们就来聊聊关于深入理解jvm知识点?接下来我们就一起去了解一下吧!

深入理解jvm知识点

上一章大致介绍了jvm内存模型,下来接着各区的详细内容

1.先从最不熟悉的来,虚拟机栈。

虚拟机栈都知道是运行咱们方法的,实际上他的里面放了一个一个的栈针,同时每一个线程中都会独有一份虚拟机栈的内存空间。这是为什么呢?可以想一想,如何不是每个线程独有一份,那栈里面的栈针(每一个栈针就是一个方法)谁知道是哪个线程的,jvm也不是上帝(QUQ).所以我们的jvm大佬在设计jvm的时候每一个线程都会有一根栈资源和对应的程序计数器(各自记录自己的垃圾代码执行到哪里了)。

我们的每一个栈针(就是每一个java方法)中存放的又是什么呢?和我们写的java代码又有什么关系呢?考点必会**

1.局部变量表(又叫本地变量表,都是一个意思),在这里面存放的就是我们在方法中定义的一个一个的变量,包括了咱们java的基础数据类型和引用类型(这些变量又是怎么进入到我们的栈中的呢?这个会在下文中解释,不急!),具体的比如咱么定义的int类型变量,或者new出来的对象。。。

为什么需要把这些变量放在局部变量表中呢?(补充,局部变量中还存放着咱们的当前类的对象的this,相信大家都用过,但是如果是static修饰的方法既没有,因为这个东西是属于类的)。因为我们java代码在服务器运行,然而具体到jvm中就是每一个栈针(再详细的可以查看我们的字节码文件)。

同时我们的局部变量表是一个有序的数组,他的第一个元素放的使我们的this,然后就是一次放我们的定义好的各种变量。这里提到一个问题,我们的变量放在我们的栈中是要占用我们的虚拟机内存的,所以我们的栈会发生垃圾回收吗(GC)?显然不会的,如果我们的栈中方法太多,比如我们写了一个递归,但是因为种种原因(代码太垃圾),导致没有结束,那我们的栈中会因为有太多的方法而导致stackoverflower错误(英文不知道写对没有)。或者我们的局部变量表太大,比如我们定义了1万万的数组,往里面装满了值。(你认为会出问题吗?)*

2.操作栈,这个地方大家可以简单的记住就是用来计算的。他计算的又是什么呢?其实这个地方计算的就是比如:1 1等于几(不要觉得简单,你知道底层原理吗?)类似的东西,当然不会这么简单。比如我们定义了2个变量相加,我们会把a变量先压入操作数栈,然后把b变量压入操作数栈,然后相加,最后的出的数值出栈然后赋值给我们接受计算结果的比如c变量。其实就是这样(具体的可以反编译我们的的字节码文件进行查看,后文会详细介绍这个技能,当前等级不够还不能用这个技能!!!!!!)

插播一句,作者码子不易,看了觉得有用的大佬请点一下关注,后面会接着记录学习过程,和大家一起共同成长!!!!

3.动态链接,这个东西一看有点蒙。但是这样命名却是也没有问题。因为这个东西关联到了我们方法区中的东西(java8叫元空间),我们都知道,我们的字节码中的(没看过字节码的自己看看,如果不想看先忽略后文问有详细介绍)会有很多的符号引用,在我们运行java代码的过程中,比如我们引入一个int类型的变量a他的值是5,虽然我们写java代码的时候知道我们自己写了这一段代码,但是我们需要把我们的java代码转换成字节码,然后转换成机器指令(01010101.。),首先java代码转换成字节码的时候,我们就需要告诉jvm我们的代码逻辑是什么,我们先执行那个再执行那个,同时我们的代码在编译成字节码的时候,我们的类信息是放在我们的方法区的,所以我们需要一些符号引用放在我们的栈针中,这里会有一个问题,我们的数据不都有一个内存地址吗?为什么不用这个,而是用符号引用,我可以告诉你就是为了简洁,所以我们的动态链接就是指向的我们的方法区一个个符号引用,他们在运行时候会转换成一个一个的直接引用(在讲方法区的时候会详细介绍),为什么叫动态,因为他是运行的时候用的,还有的叫静态链接没他事类加载,初始化的时候用到,总结一句话就是:我们的类信息,包括类中的方法,修饰符,变量,变量类型,字面量,这些东西都是放在方法区的,如果我们的栈针中要用,就要去方法区中找,然而找的时候就是用的符号引用,就是相当于他们的序号,二这就叫动态链接,不知道懂了没有,后面会懂得(嘿嘿嘿),

    推荐阅读
  • 人气最好的广告(品牌名最有力的广告)

    一经发布,因凉茶名称引发热议,足以说明品牌名对一个品牌的重要性。此次虽因凉茶名称引发热议,但可口可乐依然是广告界公认最好的品牌中文译名,它不仅保持了英文的音节,而且体现了品牌核心概念“美味与快乐”。华为取自“心系中华,有所作为”,华为的诞生改写了中国乃至世界通信制造业的历史。李宁由著名体操运动员李宁先生创立,以“一切皆有可能”作为品牌口号,是真正代表中国的专业体育品牌。

  • 抗美援朝铭记历史保家卫国(保家卫国笔为枪)

    共和国人民军最近在朝鲜西北部的作战中取得了重要胜利。在此次作战时期,有中国人民抗美援朝保家卫国志愿部队的组成,这个志愿部队在人民军总司令部统一指挥之下,和人民军一道参加了作战。新华社志愿军总分社报务人员在抢修无线电台的天线,保证发稿线路畅通。很快,应朝鲜政府请求,中国决定“抗美援朝,保家卫国”。10月中旬,陈伯坚随彭德怀率领的中国人民志愿军部队跨过鸭绿江,进入朝鲜战场,进行战地报道。

  • 坐便器怎么用(一次性坐便器垫纸怎么用)

    坐垫圈是坐姿时使用的,站姿时要把坐垫圈掀起来。马桶的发明被称为一项伟大的发明,它解决了人自身吃喝拉撒的问题。后来又逐渐演变为利用虹吸、螺旋虹吸,现在最新的喷射虹吸式和超旋虹吸式等原理的抽水马桶。

  • 怎样用手机制作电子版证件照(证件照电子版怎么弄)

    随着互联网快速发展,日常生活中电子版证件照适用场景越来越广泛,如各种考试、面试等场合都需要电子版证件照。照片上传完毕之后,相机会对图片进行识别处理,这个过程非常快。整个操作非常简单不需要任何技术,要比传统拍照方式方便很多。

  • 节假日三倍工资怎么算(节假日三倍工资的计算方法)

    下面内容希望能帮助到你,我们来一起看看吧!节假日三倍工资怎么算国家法定节假日工资三倍工资,指的是如果劳动者在国家法定节假日加班的,额外再支付300%工资作为加班费,不包括应该支付的那一倍工资。也就是说,法定节假日视为出勤,无论是否上班,都应该正常的计算一倍工资。

  • 最新刑法徇私舞弊发售发票罪量刑标准是什么

    税务机关的工作人员违反法律、行政法规的规定,在办理发售发票、抵扣税款、出口退税工作中,徇私舞弊,致使国家利益遭受重大损失的,处五年以下有期徒刑或者拘役;致使国家利益遭受特别重大损失的,处五年以上有期徒刑。

  • 大暑与小暑(小暑和大暑有什么区别?)

    大暑的时间是在7月23日前后太阳位置不同小暑时,太阳到达黄经105°。大暑时,太阳到达黄经120°。气候不同小暑时节,气候特点是气温升高,进入伏旱期。大暑时节正值三伏中的“中伏”阶段,气候特点是高温酷热。三候不同小暑分为三候:“一候温风至;二候蟋蟀居宇;三候鹰始鸷。”二候是指由于炎热,蟋蟀离开了田野,到庭院的墙角下以避暑热。

  • 家用合资跨界车哪款好(四款个性城市跨界车)

    配置上,新世嘉CROSS采用显示出跨界风格的织物座椅,有倒车雷达、定速巡航等非常实用的配置,完全能够满足消费者的用车需求。换装新的1.6L发动机后,新车的百公里综合油耗将降至6.7升,同时排放量降低约25%左右,以达到欧V的排放标准。此外新车还有1.6L发动机可选,传动系统与之配合的是6速手自一体变速箱。新车还采用了五幅铝合金轮毂,并在外后视镜处加入了LED转向灯。

  • 蔚来的竞争力在哪里(亏了666亿蔚来太难了)

    第二季度,蔚来在一般及行政费用方面的支出,同比增长52.4%至22.8亿元。这也直接导致蔚来二季度车辆毛利率同比下滑3.6%至16.7%。蔚来2022年第二季度实现营收102.9亿元,同比增长21.8%,单季度收入首次突破百亿大关,其中车辆销售收入为95.7亿元,同比增长20.1%,占总收入的93%。在财报中,蔚来对三季度的交付量给出了指引,预计交付31000辆至33000辆。ET5将于9月9日锁单,并于9月底开启交付。

  • 180个实用偏方(偏方汇集可以收藏一下)

    1.治疗脑梗的脑袋里长肿瘤,脑梗等症状,大医院治疗一般都得开刀,大岁数了的人风险太大,但是少数民族——白族的人根本不当回事,说有什么呀,你弄7.8斤晒干的桔子皮作枕头,天天枕着它就行了,我来为大家讲解一下关于180个实用偏方?跟着小编一起来看一看吧!