暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

JDK和JRE_面试系列之Java基础

Java Miraculous 2021-09-12
677
JDK是什么?JRE又是什么?两者有什么区别?一到两年经验的Java求职者经常会遇到这个问题,虽然这个问题很简单,但是有很多人又说不太清楚,本篇文章就详细的介绍下。
  • 一、JDK

JDK不是一个英文单词,而是三个单词的缩写:Java Development Kit,翻译过来就是Java开发工具包,那什么是工具呢?当你初学Java的时候,第一步肯定是安装JDK,安装完JDK后还有一步:配置环境变量,环境变量是怎么配置的呢?JDK的安装路径+/bin,其实这些所谓的工具对应的命令就是在bin目录下

有没有眼熟的命令?java、javac、jmap、jstack、jps、jstat等这些都是平时开发时常用的命令,这些就是工具。
  • 二、JRE

JRE也不是个英文单词,它也是三个单词的缩写:Java Runtime Environment,翻译过来是Java运行环境,大名鼎鼎的Java虚拟机就是包含在JRE的中,JRE的目录如下

JRE也有一个bin目录,不过看着比较眼生

但是lib目录可能就会熟悉点,里面都是Java的核心类库

  • 三、JDK和JRE的区别

看下JDK的目录你会发现,其实JDK中是有JRE的

记不记得在安装完JDK后,会提示你继续安装JRE,这时候其实不用再装了,因为JDK中其实已经包含JRE了。

回忆一下刚开始学Java的时候,那时候你刚刚安装JDK,根本不知道eclipse和IDEA为何物,那怎么运行Java程序?
  • 首先新建一个HelloWorld.java(爷青回)

由于windows上的带的记事本规范性太差,可以用EditPlus或者Notepad++打开,写一个简单的HelloWorld程序,注意类名一定要和你新建的文件名一样,比如我这文件名是HelloWorld,那么类名也得是HelloWorld

配置环境变量为JDK的bin所在的目录

检查环境变量是否配置成功

  • javac HelloWorld.java

    在HelloWorld.java文件所在的目录运行cmd,然后运行javac HelloWorld.java,没出现什么提示就说明没问题

去文件夹下看看,你会发现多了一个同名的.class文件


  • 用java命令运行.class文件

所以,运行一个java程序的流程可以总结如下:
编写.java文件-->用javac命令编译成.class文件-->用java命令运行.class
文件
其实javac命令编译成.class文件这一步就是JDK中的工具做的,而java命令运行.class文件这一步是JRE做的,下面验证下
将环境变量改成JRE的bin目录所在的位置

将刚才生成的.class文件先拷到别的位置,只留下.java文件

同样再运行cmd,先运行java查看环境变量是否配置成功,然后再运行javac,但是你会发现找不到javac了

我们再将.class文件还原回去,然后再运行java命令

综上所述,要想将自己写的.java文件最终运行起来,必须用JDK,而JRE只能运行已经编译好的.class文件。面试时回答出来这句话足够了。
文章转载自Java Miraculous,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论