Java运行程序过程解析/ClassPath指路

Demo

public class HelloWorld{
    public static void main(String[] args){

        System.out.println("Hello world");

    }
}
  1. 使用DOS命令执行此程序
    1. 第一步:将源文件Demo.java 编译成Demo.class文件(字节码是JVM的识别语言)
    2. 第二步:执行Demo.class文件 与JVM进行交互。

第一步为java的编译阶段;第二部为java的运行阶段

注意:在运行java Demo时,当前路径必须切换至class文件所在的位置,也就是class的绝对路径。

  • 运行步骤:
    1. javac  +路径:本质上是执行的编译阶段。将所写的源代码检查是否有错误,如果没有错误将编译成字节码.class文件;
    2. java +类型:本质上是java的运行阶段。使用java命令将.class文件执行,本质上将字节码文件在JVM中运行。(运行java Demo时,当前路径必须切换至class文件所在的位置,也就是class的绝对路径。:本质原因是在JVM运行.class文件时,首先JVM中的类加载器ClassLoader会根据环境变量(ClassPath)中的路径去寻找Demo.class的位置

                        注意:ClassPath环境变量是java所特有的,而Path变量是Windows系统自有的

总结:

  • java A 执行后,先启动JVM,JVM启动ClassLoader,ClassLoader去硬盘上找A.class,找到则执行,找不到则报错;
  • ClassPath就是指路的,给类加载器ClassLoader指路的。
  • 10
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值