gzyueqian
13352868059

java培训机构解读java零基础教程

更新时间: 2020-06-02 16:15:36来源: 粤嵌教育浏览量:8927

     Java这门世界上公认的开发语言,一直在开发界都是有着很高的地位的,而这种地位不管是有多少的编程语言都无法撼动它的地位的。Java语言可以有着这么高的地位一直都是凭借着它本身的特点的,那么对于零基础想要学习java的学员来说什么样的java零基础教程才是好的呢?

  想要学习好java的话那么对于java的jvm运行大家肯定是要先了解清楚的了,下面粤嵌科技的小编就带大家一起来了解下jvm运行时内存是怎么样的?Java 堆从 GC 的角度还可以细分为:新生代(Eden 区、From Survivor 区和 To Survivor 区)和老年代。


  新生代


  是用来存放新生的对象。一般占据堆的 1/3 空间。由于频繁创建对象,所以新生代会频繁触发MinorGC 进行垃圾回收。新生代又分为 Eden 区、ServivorFrom、ServivorTo 三个区。


  Eden 区:Java 新对象的出生地(如果新创建的对象占用内存很大,则直接分配到老年代)。当 Eden 区内存不够的时候就会触发 MinorGC,对新生代区进行一次垃圾回收。


  ServivorFrom:上一次 GC 的幸存者,作为这一次 GC 的被扫描者。


  ServivorTo:保留了一次 MinorGC 过程中的幸存者。


  老年代


  主要存放应用程序中生命周期长的内存对象。老年代的对象比较稳定,所以 MajorGC 不会频繁执行。在进行 MajorGC 前一般都先进行了一次 MinorGC,使得有新生代的对象晋身入老年代,导致空间不够用时才触发。当无法找到足够大的连续空间分配给新创建的较大对象时也会提前触发一次 MajorGC 进行垃圾回收腾出空间。


  MajorGC 采用标记清除算法:首先扫描一次所有老年代,标记出存活的对象,然后回收没有标记的对象。MajorGC 的耗时比较长,因为要扫描再回收。MajorGC 会产生内存碎片,为了减少内存损耗,我们一般需要进行合并或者标记出来方便下次直接分配。当老年代也满了装不下的时候,就会抛出 OOM(Out of Memory)异常。


  零基础想要学习java的话是要学习很的知识的,要先从基础开始打起。如果说你想要学习java的话,那么粤嵌科技的小编欢迎大家来我们公司的java培训班进行实地考察,也可以点击我们文章下面的获取试听资格按钮来获取我们的java课程免费试听资格,在试听中可以更加深入的了解我们粤嵌科技。

免费预约试听课