Java程序的运行原理

    xiaoxiao2023-11-14  172

    Java程序的运行原理

    用一个程序的运行来解释Java程序的运行原理,看起来会更清晰。

    一、用记事本编写一个程序。

    1.右键新建一个文本文档,编辑文件名和后缀名。

      (谨记编辑文件名时,不能加空格,若有空格,将无法识别该文件)   (修改后缀名时,若是隐藏的,则可以点击工具栏的查看,在文件扩展名前打勾(win10))

    2.编辑代码

       鼠标右键该文件,点击编辑

      (若没有编辑此按钮,则点击打开方式,选择记事本)   (编写代码时,养成良好的代码习惯,合理的使用Tab键和Enter键)

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

    二、Java程序编译

    1.在Java程序所在的文件夹目录上输入cmd 

       点击后,会出现命令框

         (此框为Java文件所在的目录)

    2.输入一行代码

    javac HelloWorld.java

       (前一个框为编译语句,后一个框为所编译的文件,中间以空格间隔)

    3.接下来应该会出现其他提示,提示继续输入命令

      (如果出现其他说明,说明出现了相应的问题。如:环境变量设定的问题,代码问题,路径问题)

    4.回头看看文件所在的目录,会发现多了一个class文件,其中便是编译好的Java字节码。

    三、解析并运行Java程序

      接着输入另一行代码,便会显示代码里所表达的含义。


    接下来,便讲解Java的运行原理了。

    看解析图分析

    Java代码运行分为两部分

    1.编译,代码便是:javac 文件名+扩展名

            用Java编写的程序(存放在扩展名为java的文件中)经过编译器(即JDK根目录bin文件夹中的javac.exe文件)编译成字节码文件(即扩展名为class的文件)。         这个字节码文件不是针对具体平台的,而是针对抽象的Java虚拟机的,在Java虚拟机上运行,在不同类型的平台上安装不同的Java虚拟机,这些不同的Java虚拟机屏蔽了各个不同平台的差异,从而使编译过的Java程序具有平台无关性。         通俗一点便是:编译完的文件,没有平台的限制。可谓是一次编译,多次运行。

    2.解析并运行,代码便是:Java 文件名

      即Java虚拟机在执行字节码时,把字节码解析成具体平台上的机器指令执行。


    1.编译:检查代码是否有语法错误,或者编译环境,或者路径问题。将代码编译成字节码。

    2.解析:将字节码编译成由0,1组成的代码,并和原有的中间代码合成目标代码,在机器上运行。

     


      我所知道的就这些了,如有缺陷或者错误,请不吝赐教。

    最新回复(0)