java的加载与执行

本文详细阐述了Java程序的编译阶段,包括语法检查、字节码生成过程,以及javac的使用方法。接着介绍了运行阶段,涉及java.exe、JVM、类加载器和字节码执行。强调了跨平台特性及源代码与class文件的关系。
摘要由CSDN通过智能技术生成

java程序对的运行包括两个非常重要的阶段

  • 编译阶段
  • 运行阶段

编译阶段

  • 编译阶段主要的任务是检查java源程序是否符合java语法,

  • 符合Java语法则能够生成正常的字节码文件(xxx.class)

  • 不符合Java语法规则则无法生成字节码文件

    • 字节码文件中不是纯粹的二进制,这种文件无法在操作系统当中直接进行。

    编译阶段的过程:

    • 程序员需要在硬盘的某个位置<位置随意>新建一个.java扩展名的文件。
    • 该文件被称为java源文件,源文件当中编写的是Java源代码/源程序
    • 而这个源程序是不能随意编写的,必须符合java语法规则<java语法规则是需要记忆的>
    • Java程序员需要使用JDK当中自带的javac.exe命令进行Java程序的编译

javac怎么用呢?在哪用呢?

  • javac的使用规则:
    • javac java源文件的路径
    • 在DOC命令窗口中使用
  • javac是一个java编译工具/,命令

一个Java源文件可以编译生成多个.class文件【以后再说】

字节码文件/class文件是最终要执行的文件,所以class文件生成之后,java源文件删除并不会影响Java程序的执行。但是一般java源程序不要删除,因为class文件最终效果可能不是我们想要的,那么这个时候需要回头再重新修改java源程序,然后将java源程序重新编译生成新的class文件,然后再运行这个class程序,生成新的效果。

  • 编译结束之后,可以将class文件拷贝到其他操作系统当中运行【跨平台】

运行阶段【可以在其他操作系统中,跨平台】

  • JDK安装之后,除了自带一个javac.exe之外,还有一个工具/命令,叫做java.exe命令主要负责运行阶段。

  • java.exe在哪里用了,怎么用?

    • java 类名

    例如:

    硬盘上有一个.Aclass,那么就这样用:java A

    千万要注意:不要写成这样:java A.class【这种方式是错误的,大家记住就行】

运行阶段的过程

  • 打开DOC命令窗口
  • 输入 java A
  • java.exe命令会启动java虚拟机(JVM),JVM会启动类加载器ClassLoader
  • ClassLoader会去硬盘上搜索A.class文件,找到该文件则该字节码文件装载到JVM当中
  • JVM将A.class字节码文件解释成二进制10110010这样的数据。
  • 然后操作系统执行二进制和底层硬件平台进行交互。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

于歌852

您的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值