JAVA基础梳理1:java运行环境、命令行编译执行、path和classpath作用

本文介绍了JAVA基础概念,包括JDK与JRE的区别,详细阐述了java运行环境的配置,重点讲解了在Windows环境下如何配置path和classpath环境变量,以确保javac和java命令的正常执行。同时,解释了classpath的作用,即在多class文件项目中指导Java找到所需类文件的位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、java运行环境

  安装java一般是安装JDK,那么什么是JDK?什么又是JRE?

  (以下来自百度定义)

  JDK (Java Development Kit) 称为Java开发包或Java开发工具,是一个编写Java的Applet小程序和应用程序的程序开发环境。

  JDK是整个Java的核心,包括了Java运行环境 (Java Runtime Envirnment) ,一些Java工具和Java的核心类库 (Java API) 。不论什么Java应用服务器实质都是内置了某个版本的JDK。 。

  另外,可以把 Java API 类库中的Java SE API子集和Java虚拟机这两部分统称为 JRE (JAVA Runtime Environment) JRE 是支持Java程序运行的标准环境 。

  JRE是个运行环境,JDK是个开发环境。因此写Java程序的时候需要JDK,而运行Java程序的时候就需要JRE。而JDK里面已经包含了JRE,因此只要安装了JDK,就可以编辑Java程序,也可以正常运行Java程序。但由于JDK包含了许多与运行无关的内容,占用的空间较大,因此运行普通的Java程序无须安装JDK,而只需要安装JRE即可 。





2、在命令行编译执行java程序(windows)

  要知道怎么在命令行编译执行程序,首先我们要知道java程序具体的执行过程。
 
 

  如上图所示,一个java程序完整的执行过程是:

  首先, 按照java的语法写一个以 .java 为后缀的源程序

  其次,通过java编译器将源程序编译成字节码文件,即以 .class 为后缀的文件

  然后,经过类装载器、字节码校验器、解释器等的层层运行,转变为操作系统平台认识的可执行文件。如在windows操作系统下,就转变为以 .exe为 后缀的文件

  最后,由操作系统平台执行,给出结果。

  java的跨平台特性,就是在第三步将字节码文件转换成操作系统可执行文件时,对于不同的操作系统可以转换成不同操作系统可以执行的文件。java核心机制之一的java虚拟机机制就是这个作用。java虚拟机可以理解成一个以字节码为机器指令的cpu,对于不同的运行环境,有不同的虚拟机。
 
   了解了java程序的执行过程,我们就可以知道在命令行下编译、执行java程序需要怎么做。先编译后运行。
 
    在命令行下跳转到程序存放路径,
   
    编译:输入javac  *.java   (*指源程序文件名)   将其编译成字节码文件,执行完后命令你会发现程序目录下出现了一个对应的 .class文件

    运行:并不是输入java  *.class  而是输入 java   * (*指类名,即程序中的public 类名,与源文件程序文件名一致。java语法规则)
  
   


3、path和classpath作用

  在安装了JDK以后,一般的教程都会直接让我们配置path和classpath,可是它们的作用是什么?为什么要配置成那样?

path

  之前讲过,编译java程序需要在命令行输入javac *.java

  在windows的DOS命令行下输入javac:

  其实是执行了windows下的文件——例如D:jdk\bin(编译好的程序、可执行程序存放的地方)\javac.exe


  那么windows为什么会知道去这条路径寻找javac.exe这个可执行文件呢?

  当我们在命令行输入相关命令,windows一般会去环境变量path里的各个目录找,看看有没有相应可执行文件,有的话直接执行,  没有的话会给出相关信息。


  因此,为了让javac这个命令生效,我们需要配置环境变量path,将javac的目录加进来。

  在  我的电脑/属性/高级/环境变量/系统变量   中找到path,打开JDK中的bin文件夹,找到javac.exe存放地。将文件栏上的地址复制下来,黏贴到path当中的目录后面,目录与目录之间用分号;隔开。


classpath


  系统知道去哪找javac,那么配置classpath是为了知道去哪找java?并不是,在配置path时就知道去哪找java命令了。javac.exe与java.exe是存放在一起的。


  之所以配置classpath,是因为大项目中多个class文件要相互配合,一个class要用另一个class,去哪找另一个class。去哪找呢?

  答案是在classpath里找。


  所以我们在 我的电脑/属性/高级/环境变量/系统变量  里添加一个classpath 。同样的找到jdk下的lib(类库),那里存放着许多类文件,将目录添加进去就行了 。也是用;分开。(可以添加  ; .     ,就在当前执行程序目录下找 )


  有些添加home变量不过是将path和classpath中的前半部分D:jdk提取出来,后面设置path和classpath需要引入


给出具体定义

 

  path:windows系统执行命令时要搜寻的路径

 

  classpath : java在编译和运行时要找的class所在路径

  



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值