虚拟机通过调用某个指定类的方法main启动,传递给main一个字符串数组参数,使指定的类被装载 , 同时链接该类所使用的其它的类型,并且初始化它们 。新建一java源文件并取名HelloApp.java,内容如下:
class HelloApp {
public static void main(String[] args) {
System.out.println("Hello World!");
for (int i = 0; iargs.length; i++ ) {
System.out.println(args);
}
}
}
在命令模式下输入:javac HelloApp.java 进行编译,这时同目录下会产生一个编译后的文件:HelloApp.class
然后在命令行模式下键入:java HelloApp run virtual machine
将通过调用HelloApp的方法main来启动java虚拟机 , 传递给main一个包含三个字符串"run"、"virtual"、"machine"的数组 。我们略述虚拟机在执行HelloApp时可能采取的步骤 。
?
?
JVM虚拟机运行过程
开始试图执行类HelloApp的main方法 , 发现该类并没有被装载,也就是说虚拟机当前不包含该类的二进制代表,于是虚拟机使用ClassLoader试图寻找这样的二进制代表 。如果这个进程失败 , 则抛出一个异常 。类被装载后同时在main方法被调用之前,必须对类HelloApp与其它类型进行链接然后初始化 。链接包含三个阶段:检验,准备和解析 。检验检查被装载的主类的符号和语义,准备则创建类或接口的静态域以及把这些域初始化为标准的默认值 , 解析负责检查主类对其它类或接口的符号引用,在这一步它是可选的 。类的初始化是对类中声明的静态初始化函数和静态域的初始化构造方法的执行 。一个类在初始化之前它的父类必须被初始化 。
java语言代码大全翻译的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java语言代码大全及其含义、java语言代码大全翻译的信息别忘了在本站进行查找喔 。
推荐阅读
- 联想电脑显卡怎么驱动,联想电脑显卡驱动怎么更新
- 拍摄月全食需要什么设备,月食拍摄技巧
- 全网营销如何经营企业营销,全网营销如何经营企业营销模式
- 医疗直播背景素材高级,医疗直播都有哪些内容
- 代码解耦java 代码解耦 英文
- 佳能拍摄视频什么好,佳能拍视频哪款好
- python获取京东评论,python爬取京东评论
- asp.net取日期部分,asp获取当前日期和时间
- c语言字符长度统计函数 c语言统计字符串的长度