Java程序的运行原理简述

作为一名java的使用者,掌握其基本的运行原理与体系结构是必要的,下面我们通过一个简单的例子来简述java程序的运行过程与原理。

创建一个小程序

为了方便介绍,我们选择创建一个百看不厌的小程序"HelloWorld".
(注:以下程序的实现需要事先安装好JDK)

public class HelloWorld{
	
	public static void main(String [] args){
		System.out.println("Hello World");
	}
}

在这里插入图片描述

生成class文件

在目录下打开cmd窗口输入:

javac HelloWorld.java

按下回车后我们发现在目录下新生成了HelloWorld的class文件!!?
在这里插入图片描述

运行Java程序

接下来我们在cmd窗口中继续输入:

java HelloWorld

程序运行成功!!!
至此,恭喜你已经在终端中编译并运行了第一个java程序。
在这里插入图片描述

Java程序的运行原理

java虚拟机

通过上面小程序的实现,我们发现java程序的实现似乎有所不同,这里我们首先介绍一下java最具吸引力的特性之一——java虚拟机(JYM)
Java虚拟机是一个可以执行Java字节码的虚拟机进程。用Java编写的程序(存放在扩展名为java的文件中)经过编译器(即JDK根目录bin文件夹中的javac.exe文件)编译成字节码文件(即扩展名为class的文件),此时的class文件并不是我们所熟知的01编码,class文件通过虚拟机形成可执行文件。不同平台的JVM各有不同,但均提供相同的接口,实现了程序与操作系统的分离,从而实现了Java 的平台无关性。 也就是说,相对于解释型语言,java这种编译型语言具有较高的可移植性,实现了“”一处编写,处处运行”,编译后,不依赖于平台环境,在各种操作系统均可运行。
在这里插入图片描述

java的运行过程

大体来说,java的运行过程主要分为:

  1. 源文件(.java源代码)通过编译器编译成字节码文件class。

  2. 通过JVM中的解释器将字节码文件生成对应的可执行文件。

  3. 由解释器翻译的特定的机器码将在特定的目标机器上运行。

具体过程如图所示:
在这里插入图片描述

最后

记录一下相关指令:

  1. 编译:javac XXX.java

  2. 执行:java XXX

  3. 反编译 javap –c XXX.class

  • 6
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值