(转)Java 程序的执行过程
来源:互联网 发布:c语言eof的用法 编辑:程序博客网 时间:2024/05/30 05:41
首先编译:虚拟机会根据java预言的规则进行语法分析,词法分析,语义分析等等,以及类变量常量的提取等等,然后依据class文件的格式把程序转化为字节码文件。这就是你用javac命令的结果。
运行:要经过装载———》链接——》初始化的步骤,进入内存(分配空间,初始化变量方法区,常量池,堆栈等等),然后在用到的时间就从main方法入口区执行程序!这里面的每一个步骤都是很复杂的过程
---->Java应用程序的开发周期包括编译、下载、解释和执行几个部分。Java编译程序将Java源程序翻译为JVM可执行代码--字节码。这一编译过程同C/C++的编译有些不同。当C编译器编译生成一个对象的代码时,该代码是为在某一特定硬件平台运行而产生的。因此,在编译过程中,编译程序通过查表将所有对符号的引用转换为特定的内存偏移量,以保证程序运行。Java编译器却不将对变量和方法的引用编译为数值引用,也不确定程序执行过程中的内存布局,而是将这些符号引用信息保留在字节码中,由解释器在运行过程中创立内存布局,然后再通过查表来确定一个方法所在的地址。这样就有效的保证了Java的可移植性和安全性。
---->相关概念:
JVM Java Virtual Machine(Java虚拟机),的。Java虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,实际上最终还是把字节码解释成具体平台上的机器指令执行。
- (转)Java 程序的执行过程
- Java程序的执行过程
- java 执行过程 运行原理
- java程序执行过程
- JAVA程序执行过程
- Java程序执行过程
- java程序执行过程
- java程序执行过程
- java程序执行过程
- Java程序执行过程
- 一个Java程序的执行过程
- 一个Java程序的执行过程
- 一个Java程序的执行过程
- Java程序执行过程的内存分析
- 一个java程序的执行过程
- Java中程序的执行过程
- 程序的执行过程
- 程序的执行过程
- try-finally与try-catch-finally的…
- ubantu下命令行格式化U盘
- (转)Android开发: strings.xm…
- sourceinsight中文显示乱码问题彻…
- (转)Java用native2ascii命令做unic…
- (转)Java 程序的执行过程
- uva 1630 Folding
- (转)解决 Android 模拟…
- (转)Android Fragment
- android触屏事件处理onInterceptTo…
- visual assist x的工具栏不显示
- linux进程互斥锁
- (转)Android 编译选项user、u…
- (转)linux下svn常用指令