保健励志美文体育育儿作文
投稿投诉
作文动态
热点娱乐
育儿情感
教程科技
体育养生
教案探索
美文旅游
财经日志
励志范文
论文时尚
保健游戏
护肤业界

面试被问到Java虚拟机,用这篇文章怼过去

  前言
  又是这个学弟的文章,关于面试他已经写了俩篇了,分别是:
  面试被问到SpringIOC、AOP和动态代理,用这篇文章怼过去
  作为Java后台,这些都不会的话,就别去面试了。
  看过这俩篇文章的小伙伴,有没有感觉现在的年轻人真的是不得了了。
  想要他联系方式的小伙伴,可以后台私信我。Jvm内存结构
  Jvm内存结构,一般是面试官对Java虚拟机这块考察的第一问。讲真,还没背会,自己罚自己面壁思过。
  Java虚拟机的内存结构一般可以从线程共有和线程私有两部分起头作答,然后再详细说明各自的部分,类似树状结构的作答,好处就是思路清晰,面试官听着也舒服。
  线程共有的包括Java堆和方法区,线程私有的包括虚拟机栈、本地方法栈和程序计数器。这些内容回答一遍后,就可以开始详细叙述每个点的详细部分。
  Java堆是用于存放Java程序运行时所需的对象等数据,Java堆又分为新生代和老年代。我们平常所说的垃圾回收,主要回收的就是堆区。更细一点划分新生代又可划分为Eden区和2个Survivor区(FromSurvivor和ToSurvivor)。
  方法区中最为重要的是类的类型信息、常量池、域信息、方法信息。总之,方法区保存的信息,大部分来自于class文件,是Java应用程序运行必不可少的重要数据。
  程序计数器用于存放下一条运行的指令,这里是唯一无内存溢出的区域。如果当前程序正在执行一个Java方法,则程序计数器记录正在执行的Java字节码地址,如果当前线程正在执行一个Native方法,则程序计数器为空。
  虚拟机栈和本地方法栈用于存放函数调用堆栈信息。虚拟机执行java程序的时候,每个方法都会创建一个栈帧,栈帧存放在java虚拟机栈中,通过压栈出栈的方式进行方法调用。
  很多人分不清虚拟机栈和本地方法栈的区别,因为本地方法栈(NativeMethodStacks)与虚拟机栈所发挥的作用是非常相似的,其区别不过是虚拟机栈为虚拟机执行Java方法(也就是字节码)服务,而本地方法栈则是为虚拟机使用到的Native方法服务。垃圾回收算法
  当你回答Jvm内存结构,八九不离十,下一问就问你垃圾回收算法。
  我简单说一下,垃圾回收算法你可以先回答引用计数法,回答完后说明一下此算法的缺点(无法解决互相引用问题),再引入标记清除算法,再说一下它的缺点(空间碎片问题),然后说一下复制算法、标记压缩算法如何解决空间碎片问题,最后说一下分代。到了这个时候,你完全可以举例新生代,老年代使用的是哪种算法,进行一个补充。一般回答到这,面试官就没得问了。如果还要继续深入,你可以了解垃圾回收器,CMS、G1、并行、串行等,已备不时之需。
  下面分别说一下上面提到的算法。
  引用计数法:引用计数法的实现很简单,对于一个对象A,只要有任何一个对象引用了A,则A的引用计数器就加1,当引用失效时,引用计数器就减一。只要对象A的引用计数器的值为0,则对象A就不能再被使用。
  标记清除算法:标记清除算法将垃圾回收分为两个阶段:标记阶段和清除阶段。一种可行的实现是,在标记阶段,首先通过根节点,标记所有从根节点开始的可达对象。因此,未被标记的对象就是未被引用的垃圾对象。然后,在清除阶段,清除所有未被标记的对象。
  复制算法:将原有的内存空间分为两块,每次只使用其中一块,在垃圾回收时,将正在使用的内存中的存活对象复制到未使用的内存块中,之后,清除正在使用的内存块中的所有对象,交换两个内存中的角色,完成垃圾回收。
  标记压缩算法:首先从根节点开始,对所有可达的对象做一次标记,但之后,它并不是简单的清理未标记的对象,而是将所有的存活对象压缩到内存空间的一端。之后,清理边界外所有的空间。
  分代:将内存区域根据对象的特点分成不同的内存区域,根据每块区域对象的特征不同使用不同的回收算法,以提高垃圾回收的效率。
  说在这里,我非常想补充一个冷门的考点,也是面试官不一定问的问题。
  哪些可以作为GC中root的对象?这个问题的标准回答如下:
  1。被启动类加载的类和创建的对象
  2。栈内存中引用的对象
  3。方法区中静态和常量引用的对象
  4。本地方法中JNI引用的对象垃圾收集器
  垃圾收集器有独占式的串行收集器,也有加了多线程的并行收集器。如何选择一个合适的垃圾收集器主要参考的就是GC策略的指标。包括以下几个部分:
  吞吐量:指在应用程序的生命周期内,应用程序所花费的时间和系统总运行时间的比值。举个例子,如果系统运行了100min,GC耗时1min,那么系统的吞吐量就是(1001)10099。
  垃圾回收器负载:和吞吐量正好相反,垃圾回收器负载指垃圾回收器耗时与系统运行总时间的比值。
  停顿时间:指垃圾回收器正在运行时,应用程序的暂停时间。对于独占回收器而言,停顿时间可能会比较长。使用并发的回收器时,由于垃圾回收器和应用程序交替运行,程序的停顿时间会变短,但是,由于其效率很可能不如独占垃圾回收器,故系统的吞吐量可能会较低。
  垃圾回收频率:指垃圾回收器多长时间会运行一次。一般来说,对于固定的应用而言,垃圾回收器的频率应该是越低越好。
  反应时间:指当一个对象被称为垃圾后多长时间内,它所占据的内存空间会被释放。
  堆分配:不同的垃圾回收器对堆内存的分配方式可能是不同的。一个良好的垃圾收集器应该有一个合理的堆内存区间划分。
  科普完以上知识后,我简单说一下串行、并行、CMS、G1。
  串行回收器主要有两个特点:第一:使用单线程进行垃圾回收;第二:独占式垃圾回收。并行回收器只是简单的把使用单线程进行垃圾回收改为多线程进行垃圾回收,它依旧是独占式垃圾回收。
  CMS是ConcurrentMarkSweep的缩写,意为并发标记清除,从名称上可以得知,它使用的是标记清除算法,同时它又是一个使用多线程并发回收的垃圾收集器。与CMS收集器相比,G1收集器是基于标记压缩算法的。
  那为什么CMS和G1不是独占式的垃圾回收器?
  CMS工作时,主要步骤有:初始标记、并发标记、重新标记、并发清除和并发重置。其中初始标记和重新标记是独占系统资源的,而并发标记、并发清除和并发重置是可以和用户线程一起执行的。因此,从整体上来说,CMS收集不是独占式的,它可以在应用程序运行过程中进行垃圾回收。说下阅读感悟
  周志明的《深入理解Java虚拟机》很好很强大,但阅读起来颇有点费劲,尤其是当你跟随作者的思路一直探究下去,开始会让你弄不清方向,难免有些你说的啥子的感觉。但知识不得不学,于是天天看,反复看,就慢慢的理解了。
  我其实不想说这种硬磨的方法有多好,我甚至不推荐,我建议大家阅读这本书时,由浅入深,有舍有得,先从宏观去理解去阅读,再慢慢深入,有条不紊的看下去。
  具体来说,当你看书的某一部分时,先看这部分的章节名,了解这部分这一章在讲什么,然后再看某一章,我拿类文件结构这一章来说,我必须先知道类文件结构都有什么,然后看到有魔数、Class文件版本、常量池等,然后我再去看魔数是什么,Class文件版本在哪里,常量池是什么?再深入下去,常量池有字面量和符号引用,再深入下去,可能你看懂后还想深究,可能你到这里就已经看不下去了。这都没事,我想说的是,此时看不下去的知识,就不要看了,略过看下一节,我们先把最表面的那一层看完,了解,再去深入到某个点。
  这本书的知识就像是一个多叉树,我们先把上面的那层看完再步步去深入到下一层,我觉得这样阅读起来比较轻松,不至于读到难处还要硬读下去。

八年级遵守交通规则作文导语:人是血肉之躯,车子是由钢铁组成的,血肉之躯怎能跟钢铁碰撞呢?为了我们的生命安全,请自觉遵守好交通规则吧!小编整理有关遵守交通规则的作文,欢迎阅读。第一篇:遵守交通规……关于写给10年后的自己的一封信赵非心:你好!近来身体好吗?工作顺利吗?我可是特地抽出时间来给你写这封信的,写给十年后的我。你一定特别想知道我是谁吧!我就是十年前的你呀!你一定感到特别惊讶吧,不必……关于军训作文灯,一直亮着一阵长哨划破长空,一群陌生的同学立即站好了队伍。一段铭记终生的记忆从这一刻开始。站在队伍中的我显得那么渺小,没有哪一点可能值得自豪,可我却始终在微笑。因为我深知一切将无法阻拦我……劳动节作文五一之旅五一劳动节放假三天,最适宜的就是一家人短途旅行!这个劳动节你们到哪里去游玩了呢?五一之旅作文篇一ldquo;五一rdquo;放假时,我和家人游览了位于浙江省素有ld……我心中的美好家园四年级作文650字早晨起床,小鸟在枝头上唧唧喳喳地叫着。我家旁边的自动无声太阳能列车在飞速地运转着,一天就这样悄悄地开始了。吃完早餐,我坐上用空气无形薄膜加工制成的飞行器,往学校飞去,一眨……学会感恩E度网专稿未经允许不得转载生活是什么?我们苦苦追寻。从平淡中寻找温暖,从失败中寻找成长,从失意中寻找真诚hellip;hellip;也许生活就是这个寻寻觅觅的过程。我们在……除了5年3款纯电新车,转型中的路特斯还有哪些新看点?3D数字孪生、赛道级智能驾驶、超高端纯电智能如果不是路特斯创始人柯林查普曼之子克莱夫查普曼从英国发来祝福致辞,我们很难相信,这是由一个拥有73年历史,曾在F1赛场叱咤风云的超跑……腾讯等回应奥一游戏防沉迷测评将不断加强未保力度游戏已经成为人们社交的重要组成部分,甚至成为90后、00后的社交语言。奥一实测研究院此前在游戏防沉迷过程测评发现,部分游戏在未成年保护方面仍存漏洞。而由于管控措施不完善,……如果我是一只小鸟小学生作文精选【篇一:假如我是一只小鸟】假如我是一只小鸟,我会伸开有力的翅膀,在蔚蓝的天空中自由地飞翔,飞向明天,飞向美好的理想。假如我是一只小鸟,我会昂……新机9。6发红魔6SPro半透明后盖打几分888Plus12截至目前,首批骁龙888Plus旗舰已经发布了四家,分别是小米MIX4、荣耀Magic3Pro至臻版、iQOO8Pro、ROG5sPro,下一款发布的骁龙888Plus没啥意外……苹果做不到的华为能做到?曝Mate50支持卫星通讯无卡也能打临近iPhone13系列的发布之前,网上突然曝出其竟然支持卫星通讯,这个大卖点瞬间上了热搜成为网友激烈讨论的对象。不过很快多名专业人士便进行了辟谣,认为iPhone13系列不可……拍手歌歌词你拍一,我拍一,常洗澡来常换衣。你拍二,我拍二,每天都要带手绢。你拍三,我拍三,不要随地乱涂痰。你拍四,我拍四,打死苍蝇和蚊子。你拍五,我拍五,消灭臭虫……
放暑假最想做的事初中学生作文导语:这个暑假是一个很开兴的暑假,我过得很充实也很快乐,接下来小编整理了放暑假最想做的事初中学生作文,文章希望大家喜欢!放暑假最想做的事初中作文令人期待的暑假还没到来之前……那年夏天优秀作文500字那年的夏天,很是闷热。毒辣辣的太阳在天空中悬着。知了在树荫里乘凉,却还聒噪地叫个不停。柳条和树下的草都被晒焉了。马路上,热气蒸腾,行人稀少。迎面碰见的几个行人,也只是举着伞匆匆……神舟十三号返回舱表面烧蚀程度减轻了许多,是采用新技术了吗?4月16日上午,神舟十三号载人飞船顺利返回。这是中国航天的荣耀时刻,这是中华民族的伟大时刻。细心的网友发现,神舟十三号返回舱表面烧蚀程度减轻了许多,这不经意的细节证……宇宙四大基本作用力宇宙中粒子的互补作用。物理学中有四大基本作用力。我认为是正负粒子相互作用力的强弱。宇宙中的所有物质由最基本的正负粒子结合而成。最初的时候每种正负粒子先结合成电……国旗下发言稿安全老师们,同学们:早上好!我今天演讲的题目是《安全让生命之花更灿烂》。生命是什么呢?不同的人有不同的回答。我说,生命是花,是绚丽多彩的花,世界因此更精彩!可是,有时稍……绿橘子,牵动我心(之前发错了哈)天空阴蒙蒙的,落下的雨点砸到伞上不断发出阵阵声响。蒙蒙阴雨中,望见一个老伯伏在三轮车上,嘴里喊着什么。我不禁向着老伯走去。老伯说不上年纪,大约五十多岁,也许六十多,瘦弱得……描写外公的小学生作文直到现在,我外公也仍在养鱼,他的鱼总是繁殖,让外公忙得不得了。他也常常一批一批地把鱼卖去。他养鱼虽然很忙,可他养得很开心,因为他忙的时候,脸上总带着笑容,眼睛放出光彩我有……扩写掩耳盗铃扩写《掩耳盗铃》奋斗小学五(6):刘琨深夜了,天黑黑的,伸手不见五指。这时,马路边的小黑屋的门吱纽一声开了,从里面跳出一个蒙着脸,穿着黑衣服,戴着黑手套的人。他鬼头……美丽的祖国作文400字导语:中国如一条腾飞的巨龙,吸引着全世界的目光。下面是小编整理的一些关于美丽的优秀作文,欢迎查阅!篇一:美丽的祖国我们的祖国有请劳智慧的人民,为祖国的繁今天的祖国有着丰富……温暖的冬天高中生作文精选寒冷的冬天里送上我的祝福,给你一个温暖的冬天!今天小编就来分享温暖的冬天高中生作文精选,请各位读者好好欣赏和借鉴。温暖的冬天高中生作文精选(一)在人们的欢声笑语中送……寒假趣事作文四篇篇一:寒假趣事一个快乐而短暂的寒假悄悄地从我们的身边溜走,我们又迎来了一个新的学期,发生在寒假的趣事就像天空中的星星,数不胜数,是我心头不可抹杀的一件件往事。每一颗星星都……多个首次!空间应用系统取得丰硕成果来源:央视新闻客户端在今天(17日)国新办举行的新闻发布会上,中国载人航天工程空间应用系统副总设计师、中国科学院空间应用工程与技术中心研究员钟红恩介绍,核心舱在轨运行将近……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网