new 创建对象过程
2020-04-29 21:44:57   37  举报             
     
         
 AI智能生成
  jvm new 创建对象过程
    作者其他创作
 大纲/内容
  1. 类加载    
     1.加载    
     一句话:.class文件 -> jvm  
     class文件静态存储结构->jvm方法区运行时数据区  
     创建Class对象作为方法区中这个类的各种数据的入口  
     2.链接    
     验证    
     目的:保护虚拟机  
     准备    
     为类变量分配内存并初始化零值  
     解析    
     时机不确定  
     符号引用->直接引用    
     符号引用:代表对象的一组符号  
     直接引用:    
     直接指向对象的的指针  
     相对偏移量  
     间接定位到对象的句柄  
     3. 类初始化    
     根据程序员的制定初始化类变量和其他资源  
     in other words: 执行类构造器<clinit>()方法的过程    
     由编译器自动收集类中的所有类变量的赋值动作和静态语句块(static块)中的语句合并产生的  
     使用  
     卸载  
     2. 对象创建    
     分配内存    
     为新生对象分配内存    
     指针碰撞(内存规整时)  
     空闲列表(内存不规整时)  
     初始化零值  
     设置对象头    
     类的元数据信息  
     对象哈希吗  
     对象的GC分代年龄  
     等等  
     对象初始化<init>    
     按程序员的意愿初始化对象  
     
    收藏 
     
 
 
 
 
  0 条评论
 下一页
  
  
  
  
  
  
  
  
  
  
  
 