mkoryak负责如何为Java程序创建.exe,但让我解决“什么是类文件”?
通常,您不必以exe(或其他任何形式)的形式将Java编译为字节代码。您将.java文件编译为.class文件。这些文件不能由操作系统直接运行 - 而是由Java虚拟机(JVM)运行。 JVM本质上是Java程序和底层操作系统之间的一个层。 JVM将代表您解释您的.class文件,并将其中包含的指令传递给底层操作系统(Windows,OS X,Linux等)。
那么这对你有什么用呢?
首先,它使Java比编译到字节代码的其他语言慢一点。这最初是对Java的一次重大打击,但是,随着JVM解释器变得更好并且人们已经迁移到更慢的平台(即Web Apps),这个小的延迟问题变得越来越不成问题。
但是,另一方面,您可以为单个操作系统(JVM)编写Java代码。您不需要编写一个针对Windows的应用程序版本和另一个针对OS X的应用程序,另一个版本以及另一个版本...而是编写应用程序的一个版本并定位该单个操作系统(JVM)。每个主要操作系统都有JVM版本的事实意味着,只要您编写Java程序,就可以在任何平台上运行它(理论上,无论如何)。
这是关于Java的一个非常酷的东西,也是经常听到的标语背后的含义:“一次编写,随处运行”。
这就是.class文件的全部内容。
在Java中,您编写.java文件并使用Java编译器(例如javac)来创建.class文件。然后,这些.class文件由Java运行时(例如java)运行,它在JVM上执行您的程序。
我希望有帮助,也许你根本不需要将Java程序编译成exe。