java程序不能执行

java程序不能执行,第1张

Java程序的运行过程(执行流程)分析

1、编写:是指在 Java 开发环境中进行程序代码的输入,最终形成后缀名为 java 的 Java 源文件。

2、编译:是指使用 Java 编译器对源文件进行错误排査的过程,编译后将生成后缀名为 class 的字节码文件,不像C语言那样生成可执行文件。

3、运行:是指使用 Java 解释器将字节码文件翻译成机器代码,执行并显示结果。

字节码文件是一种和任何具体机器环境及 *** 作系统环境无关的中间代码。它是一种二进制文件,是 Java 源文件由 Java 编译器编译后生成的目标代码文件。编程人员和计算机都无法直接读懂字节码文件,它必须由专用的 Java 解释器来解释执行,因此 Java 是一种在编译基础上进行解释运行的语言。

Java 解释器负责将字节码文件翻译成具体硬件环境和 *** 作系统平台下的机器代码,以便执行。因此 Java 程序不能直接运行在现有的 *** 作系统平台上,它必须运行在被称为 Java 虚拟机的软件平台之上。

Java 虚拟机(JVM)是运行 Java 程序的软件环境,Java 解释器是 Java 虚拟机的一部分。在运行 Java 程序时,首先会启动 JVM,然后由它来负责解释执行 Java 的字节码程序,并且 Java 字节码程序只能运行于 JVM 之上。这样利用 JVM 就可以把 Java 字节码程序和具体的硬件平台以及 *** 作系统环境分隔开来,只要在不同的计算机上安装了针对特定平台的 JVM,Java 程序就可以运行,而不用考虑当前具体的硬件平台及 *** 作系统环境,也不用考虑字节码文件是在何种平台上生成的。

JVM 把这种不同软、硬件平台的具体差别隐藏起来,从而实现了真正的二进制代码级的跨平台移植。JVM 是 Java 平台架构的基础,Java 的跨平台特性正是通过在 JVM 中运行 Java 程序实现的。Java 的这种运行机制可以通过下图来说明。

Java 语言这种“一次编写,到处运行”的方式,有效地解决了目前大多数高级程序设计语言需要针对不同系统来编译产生不同机器代码的问题,即硬件环境和 *** 作平台的异构问题,大大降低了程序开发、维护和管理的开销。

提示:Java 程序通过 JVM 可以实现跨平台特性,但 JVM 是不跨平台的。也就是说,不同 *** 作系统之上的 JVM 是不同的,Windows 平台之上的 JVM 不能用在 Linux 平台,反之亦然。

要想输出最后的结果,得满足200000=1+(i/10025),那么i=(200000-1)4=799,996‬

这个条件你永远达不到,所以会一直循环下去,这就是楼上为什么说你这个是死循环的原因。

达不到条件,程序会一直运行下去,自然没反应

这是对的,我调试了一下可以显示出来。我想你可能有以下几点中出错了。 第一种可能是:你没有安装好jdk-7-ea-bin-b23-windows-i586-30_oct_2007 (我用的这个版本这个软件来调试,在安装这个的时候你在选择安装路径的时候就要它默认的路径就好了。 第二:你没有设置好环境变量。你先在C盘下找到 C:\Program Files\Java\jdk170\bin 把这个路径复制好,在我的电脑点右键-属性-高级-环境变量,在下面那个框里面找到PATH,单击它点下面那个编辑按钮 d出一个对话框,上面TEXTBOX里面是:Path 在下面那个textbox里面的最后加上 ,;和你刚才复制的路径--点确定 确定。就可以调试了。 第三: 文件保存。用记事本保存的时候文件名为 demojava 保存类型为所有类型。要保存在C盘的根目录下(这样调试的时候就不用找路径了)。 第四:调试。 进入命令控制台---输入javac demojava 按回车,等下面又出现 c:\>时 再输入 java demo 就可以了、。绝对没问题。 注(我们是用的jdk-7-ea-bin-b23-windows-i586-30_oct_2007 ,在控制台调试的,所以用的这个软件来解释。)

以上就是关于java程序不能执行全部的内容,包括:java程序不能执行、为什么我的java文件编译也成功了,可运行没有反应啊!、第一次运行JAVA怎么没反映拜托各位大神等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/zz/9499322.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存