JVM
2023-08-26 17:06:57   0  举报             
     
         
 AI智能生成
  Java虚拟机知识总结
    作者其他创作
 大纲/内容
  类加载和创建对象    
     加载:把class字节码文件从各个来源通过类加载器装载入内存(方法区)中  
     链接    
     验证  
     准备  
     解析
  
     初始化:对static修饰的变量或语句进行初始化  
     创建对象  
     类加载器    
     双亲委派模型工作流程  
     破坏双亲委派    
     SPI机制  
     继承ClassLoader重写loadClass方法  
     OOM问题    
     常见OOM
    
     Java7 永久代(方法区)溢出  
     虚拟机栈溢出    
     如何计算栈的深度?TODO  
     Java 堆内存溢出  
     线上OOM排查  
     有了GC还会有内存泄漏问题吗?  
     运行时数据区域    
     程序计数器
  
     栈    
     虚拟机栈  
     本地方法栈  
     堆    
     GC堆内存分配与回收    
     什么时候触发Full GC?  
     如何避免full gc?  
     对象如何进入老年代?    
     直接分配  
     从年轻代晋升  
     会产生OutOfMemoryError异常  
     方法区    
     1.8以前用永久代实现  
     1.8用元空间实现  
     回收方法区  
     直接内存    
     常见于NIO操作时,用于数据缓冲区  
     直接内存是否可以被GC?  
     垃圾收集    
     如何判断对象是否可被回收?    
     引用计数法  
     可达性分析算法  
     哪些对象可以作为 GC Roots 呢?  
     引用的两次标记过程  
     垃圾收集算法    
     标记-清除算法  
     标记-复制算法  
     标记-整理算法  
     分代收集算法  
     垃圾收集器    
     Serial和Serial Old收集器  
     ParNew收集器  
     Parallel Scavenge和Parallel Old收集器  
     CMS收集器  
     G1收集器,JDK9    
     优点  
     缺点  
    
 
 
 
 
  0 条评论
 下一页
  
   
   
   
   
  
  
  
  
  
  
  
  
  
  
 