Java .java和.class文件区别(附上javac和java区别)

.java和.class文件区别

.java文件,就是当前编写的代码文件
.class文件,就是编译过后的文件(jvm只识别.class文件)
比如myeclipse,我们在点run的时候,都是将.java文件先编译成.class文件 然后才能运行的

举例:用notepad++,写一个简单的java类

image.png

前置条件:先进入你写的代码所在的文件夹
window系统,在dos界面 先把.java文件编译 执行 javac JavaA.java

image.png

编译后 执行 java JavaA
image.png

java是跨平台的,为什么能夸平台,因为有java的jvm。因为jvm只能识别.class文件,所有编写的.java文件运行前都要先进行编译,成为.class文件

如果.java文件直接运行是不成功的

image.png

不编译,直接运行,因为jvm需要找.class文件,然后文件夹没有,就报错。找不到.class文件

作者:风雪_夜归人
链接:https://www.jianshu.com/p/61fd29801290
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

补充 javac和java区别

javac用来编译java文件,java用来执行。
1,javac命令用来编译java文件,例如编写一个Test.java文件,使用javac Test.java可以执行编译操作,将生成一个Test.class文件。

2,java命令可以执行生成的class文件,使用java Test可以执行编写的代码。

在这里插入图片描述
如图,在cmd下使用
具体步骤
在这里插入图片描述
打开cmd
在这里插入图片描述
在这里插入图片描述
完成由.java文件在cmd上的运行

  • 16
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: java.exe和javac.exe是Java开发工具中的两个不同的程序。 java.exe是Java虚拟机(JVM)的执行程序,它负责解释和执行Java程序的字节码。当我们在命令行中输入"java xxx"时,就是在调用java.exe来执行xxx.class文件。 而javac.exe是Java编译器的执行程序,它负责将Java源代码编译成字节码文件(.class文件)。当我们在命令行中输入"javac xxx.java"时,就是在调用javac.exe来将xxx.java文件编译成xxx.class文件。 因此,java.exe和javac.exe的主要区别在于它们的功能不同,一个是执行Java程序,一个是编译Java程序。 ### 回答2: Java是跨平台的高级编程语言,它可以让开发人员创建各种类型的应用程序,从简单的命令行工具到复杂的企业级Web应用程序。 Java的代码是由Java编译器编译成Java字节码,这些字节码由Java虚拟机(JVM)解释执行。Java编译器由两个主要组件组成,即java.exe和javac.exe。 Java.exe Java.exe是Java虚拟机(JVM)的一部分。它是运行Java字节码的主要组件。当Java程序被编译并生成字节码文件后,它们必须由java.exe在JVM上运行。 Java.exe可以通过命令行启动,也可以在Web浏览器中作为Java插件运行。在命令行中,可以使用以下命令启动Java虚拟机: java [options] classname [args] 其中,[options]是可选项,用于指定Java虚拟机的运行参数。classname是要运行的Java类的名称。[args]是传递给Java类的参数列表。 Javac.exe Javac.exe是Java编译器的一部分。它用于将Java源代码编译成Java字节码。Javac.exe从.java源代码文件中读取代码,然后将其编译成Java字节码。这些字节码可以由java.exe在JVM上执行。 在命令行中,可以使用以下命令来编译Java源代码: javac [options] filename.java 其中,[options]是可选项,用于指定编译器的选项和参数。filename.java是要编译的Java源代码文件的名称。 总结: Java.exe和Javac.exe都是Java的重要组件。Java.exe是Java虚拟机的一部分,它负责在JVM上运行Java字节码。而Javac.exe是Java编译器的一部分,用于将Java源代码编译成Java字节码。Java程序必须首先使用Javac.exe将Java源代码编译成字节码,然后再使用Java.exe在JVM上运行它们。 ### 回答3: java.exe和javac.exe是Java语言中两个非常重要的执行程序,它们的主要区别体现在针对不同的Java文件进行编译和执行。 首先,java.exe是Java的运行程序,可以说是Java虚拟机(JVM)的启动器。当开发者编写一个复杂的Java程序之后,需要把这个程序编译成一个字节码文件,格式为“.class文件。然后,通过利用java.exe启动JVM,让字节码文件能够被JVM识别并完成程序的执行。也就是说,java.exe主要负责加载和执行已编译的Java程序。 而javac.exe则是Java开发者使用的编译器,它可以将源代码编译成为字节码文件,生成后缀为“.class”的可执行文件。也就是说,开发者编写的Java源代码,在使用了javac编译器之后,可以被转化为可在Java虚拟机上执行的格式化指令。因此,javac主要负责编译Java程序源代码,生成可以被java.exe启动的字节码文件。 另外,需要说明的是,java.exe和javac.exe属于Java Development Kit(JDK)中的组件,是Java开发的必要组成部分。从本质上来说,它们是Java开发中不可或缺的两个程序执行器,能够实现程序的编译和运行。 总而言之,java.exe和javac.exe虽然在名字上非常相似,但是它们的功能和作用却存在很大的区别java.exe是Java运行时的启动程序,用于加载和执行已编译的Java程序;而javac.exe是Java开发者主要使用的编译器,用于将Java源代码编译成可以在Java虚拟机上执行的字节码文件

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值