简述java语言的执行过程

Python018

简述java语言的执行过程,第1张

1、java编译生成的字节码,在所有操作系统都是一样,故其有这样的特点:

write once, run anywhere.其意思:只需要一次编码,就可以在任何环境下运行。

2、不同的操作系统,其java 虚拟机是不一样的。虚拟机将java字节代码转换对应操作系统的

相关指令,保证其正常运行。

3、java 系统支持所有的硬件的平台,不存在你提及的问题,你可以放心使用。

4、解释器在java虚拟机中,编译器在JDK或JRE 中。

5、java虚拟机就是常说的java 运行环境,其缩写是 JRE,安装在操作系统下的一个目录中,

这个目录在安装时可以由你自行指定,就像你安装其它应用软件一样。JDK中包含了JRE,

还有开发环境,如编译器,帮助文档生成器,以及系统API的jar库文件等。

java程序,是先把java源程序通过javac命令编译成字节码文件,然后再用java命令解释执行。把字节码文件复制到其他的计算机上,只要有java虚拟机就可以用java命令来执行。

可以使用java.lang.Process和java.lang.Runtime实现,下面展示两个例子,其它用法请查阅资料:

1、执行ping命令:

import java.io.BufferedReader

import java.io.IOException

import java.io.InputStreamReader

public class ProcessTest {

    public static void main(String[] args) {

        BufferedReader br = null

        try {

            String cmd = "ping 127.0.0.1"

            // 执行dos命令并获取输出结果

            Process proc = Runtime.getRuntime().exec(cmd)

            br = new BufferedReader(new InputStreamReader(proc.getInputStream(), "GBK"))

            String line

            while ((line = br.readLine()) != null) {

                System.out.println(line)

            }

            proc.waitFor()

        } catch (IOException e) {

            e.printStackTrace()

        } catch (InterruptedException e) {

            e.printStackTrace()

        } finally {

            if (br != null) {

                try {

                    br.close()

                } catch (IOException e) {

                    e.printStackTrace()

                }

            }

        }

    }

}

2、打开浏览器并跳转到百度首页:

import java.io.IOException

public class ProcessTest {

    public static void main(String[] args) {

        try {

            String exeFullPathName = "C:/Program Files/Internet Explorer/IEXPLORE.EXE"

            String message = "www.baidu.com"

            String[] cmd = {exeFullPathName, message}

            Process proc = Runtime.getRuntime().exec(cmd)

        } catch (IOException e) {

            e.printStackTrace()

        }

    }

}