java虚拟机 类初始化 阶段

java虚拟机 类初始化 阶段

ID:2018176

大小:32.50 KB

页数:2页

时间:2017-11-14

java虚拟机 类初始化 阶段_第1页
java虚拟机 类初始化 阶段_第2页
资源描述:

《java虚拟机 类初始化 阶段》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Java虚拟机类初始化阶段  在学习编程的过程中,我觉得不止要获得课本的知识,更多的是通过学习技术知识提高解决问题的能力,这样我们才能走在最前方,更多Java学习,请登陆疯狂java官网。  Java虚拟机使用某个类的过程,可分为七个阶段:  加载-验证-准备-解析-初始化-使用-卸载  本文只介绍在什么情况下对类进行初始化。  Java虚拟机规范对何时进行类的初始化做了严格规范,有且只有四种情况:  1.虚拟机启动时,指定的主类。  包含main方法的类。  2.遇到new、getstatic、putstatic、invokestatic四条指令时。  new

2、:使用new关键字实例化对象。  getstatic:读引用一个类的静态字段。  putstatic:写引用一个类的静态字段。  invokestatic:调用一个类的静态方法。  3.初始化一个类时,先初始化其父类。  接口则不是,只有真正引用到了父接口时,才会初始化。  4.对类进行反射调用时。  测试代码:  MainClass:  [java]viewplaincopy  packagecom.xuefeng.jvm.load;  /**  *初始化类的时机  *1.虚拟机启动时指定的主类  *2.new某类的对象时、引用某类的static变量时、设置某

3、类的变量时、调用某类的static方法时  *3.初始化一个类时,先初始化其父类。接口则不是,真正使用到了父接口时,才会初始化父接口。  *4.通过反射调用某类时  *@authorxuefeng  publicclassMainClass{  static{  System.out.println("MainClassinit.");  }  //1  publicstaticvoidmain(String[]args)throwsClassNotFoundException{  ////2  //System.out.println("SuperClass.

4、F_V1:"+SuperClass.F_V1);  //System.out.println("SuperClass.v1:"+SuperClass.v1);  ////3  //SubClasss1=newSubClass();  //3.1如果通过子类名引用父类的static变量,是否会触发子类的初始化?  //这取决于具体的虚拟机实现,SunHotSpot虚拟机此时是不会触发子类的初始化的。  System.out.println(SubClass.v1);  //4  Class.forName("com.xuefeng.jvm.load.SubClas

5、s");  }  }  SuperClass:  [java]viewplaincopy  packagecom.xuefeng.jvm.load;  publicclassSuperClass{  static{  System.out.println("SuperClassinit.");  }  /**  *引用v1时,会初始化SuperClass  */  publicstaticintv1=1;  /**  *引用F_V1时,不会初始化SuperClass  *staticfinal的变量,已经在编译器放到了常量池里  */  publicstatic

6、finalintF_V1=1;  }  SubClass:  [html]viewplaincopy  packagecom.xuefeng.jvm.load;  /**  *@authorxuefeng  *  */  publicclassSubClassextendsSuperClass{  static{  System.out.println("SubClassinit.");  }  }  疯狂Java培训专注软件开发培训,提升学员就业能力,重点提升实践动手能力。技术知识沉淀深厚的老师,让你感受Java的魅力,激发你对于编程的热爱,让你在半年的时间内

7、掌握8-10万的代码量,掌握Java核心技术,成为真正的技术高手;通过大量全真企业项目疯狂训练,迅速积累项目经验。让你成为技能型的现代化高端人才,迅速获得高薪就业!时间不等人,赶紧联系我们吧!

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。