编译程序的顺序,java编程顺序

  编译程序的顺序,java编程顺序

  如何解决写爬虫IP受阻的问题?立即使用。

  java代码编译顺序:

  Java代码编译是由Java源码编译器来完成,流程图如下:

  Java字节码的执行是由JVM执行引擎来完成,流程图如下:

  Java代码编译和执行的整个过程包括以下三个重要机制:1)Java源代码编译机制;2)类加载机制;3)类执行机制

  其中,Java源代码编译由以下三个过程组成:1)分析并输入符号表;2)标注处理;3)语义分析和类文件的生成

  流程图如下:

  生成的类文件由以下部分组成:

  1)结构信息。包括类文件格式版本号和每个部分的数量和大小的信息。

  2)元数据。对应于Java源代码中声明和常量的信息。包含类、继承的超类、实现的接口的声明信息、域和方法声明信息以及常量池。

  3)方法信息。Java源代码中语句和表达式的对应信息。它包含字节码、异常处理表、评估栈和局部变量区的大小、评估栈的类型记录和调试符号信息。

  类加载机制

  JVM的类加载是由ClassLoader及其子类完成的。类的层次关系和加载顺序如下图所示:

  1)引导类加载器

  负责在$JAVA_HOME中加载jre/lib/rt.jar包中的所有类,由C实现,不是ClassLoader的子类。

  2)扩展类加载器

  加载一些Java平台中负责扩展功能的jar包,包括jre/lib/*中的jar包。jar在$JAVA_HOME或-djava.ext.dirs指定的目录中。

  3)应用程序类加载器

  负责记录类路径中指定的jar包和目录中的类

  4)自定义类加载器

  由应用程序根据自身需求定制的ClassLoader,如tomcat和jboss,会按照j2ee规范实现ClassLoader。

  在加载过程中,它会先检查类是否已经加载,检查顺序是自下而上,从自定义类加载器到BootStrap。ClassLoader逐层检查,只要一个类加载器已经加载,就视为一个已加载的类,而且这个类保证只加载一次。装载顺序是从上到下。

  类执行机制

  JVM执行基于栈架构的类字节码。线程创建后,生成程序计数器(PC)和堆栈,程序计数器存储下一条要执行的指令。堆栈存储堆栈帧,每个堆栈帧对应每个方法的每次调用,堆栈帧由两部分组成:局部变量区用于存储方法中的局部变量和参数,操作数堆栈用于存储方法执行过程中产生的中间结果。堆栈结构如下:

  以上是java代码编译序列的详细内容。更多请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: