黑马程序员技术交流社区

标题: JRE是什么?JDK和JRE的区别? [打印本页]

作者: 庭院深深深几许    时间: 2019-4-17 11:28
标题: JRE是什么?JDK和JRE的区别?
  Java Runtime Environment (JRE) 包含:
  Java虚拟机、库函数、运行Java应用程序和Applet所必须文件
  Java 2 SDK (Development Kit)包含:
  JRE的超集,包含编译器和调试器等用于程序开发的文件
  Java运行环境的三项主要功能:
  n 加载代码:由class loader 完成;
  n 校验代码:由bytecode verifier 完成;
  n 执行代码:由 runtime interpreter完成。
  JDK 和JRE:
  

sdk(也就是jdk)是jre的超集,是在jre的基础上增加了编译器及其他一些开发工具。
  jre就是java运行时环境,包括了jvm和其它一些java核心api,任何一台电脑,只有安装了jre才可以运行java程序.
  总结:
  1. 如果只是要运行JAVA程序,之需要JRE就可以。 JRE通常非常小,也包含了JVM.
  2. 如果要开发JAVA程序,就需要安装JDK。
  JVM是什么?(JAVA VIRTUAL MACHINE)
  JVM是一种规范,可以使用软件来实现,也可以使用硬件来实现,就是一个虚拟的用于执行bytecodes字节码的计算机。他也定义了指令集、寄存器集、结构栈、垃圾收集堆、内存区域。
  JVM负责将java字节码解释运行,边解释边运行,这样,速度就会受到一定的影响。JAVA提供了另一种解释运行的方法JIT(just in time),可以一次解释完,再运行特定平台上的机器码,高级的JIT可以只能分析热点代码,并将这些代码转成本地机器码,并将结果缓存起来,下次直接从内存中调用,这样就大大提高了执行JAVA代码的效率。这样就实现了跨平台、可移植的功能。
  


1. JVM是指在一台计算机上由软件或硬件模拟的计算机;它类似一个小巧而高效的CPU。
  2. byte-code代码是与平台无关的是虚拟机的机器指令。
  3. java字节代码运行的两种方式:
  1)方式interpreter(解释)
  2)Just-in-time(即时编译):有代码生成器将字节代码转换成本机的机器代码,然后可以以较高速度执行。
  JAVA的跨平台实现的核心是不同平台使用不同的虚拟机
  不同的操作系统有不同的虚拟机。Java 虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”。


  JAVA语言的应用范围
  1. 桌面应用编程
  2. WEB客户端编程
  3. WEB服务器编程
  4. 手机编程(J2ME或者现在的Android系统上开发应用程序)
  5. 机器人编程
  JAVA开发环境的安装和配置详解
  下载JDK
  1. 在哪里下载JDK, 网址:
  http://www.oracle.com/technetwor ... ownloads/index.html
  2. JDK7的下载地址:
  http://www.oracle.com/technetwor ... nloads-1880260.html
  


根据自己的系统下载不同的版本。如果系统是64位则可以下载64位系统。如何查看自己的操作系统到底是32位还是64位呢?,右键单击桌面的计算机,出现如下图所示信息:


  安装JDK


  其他步骤不解释,跟普通软件安装一样,点击下一步就OK!


  环境变量配置
  我们以win7系统为例,xp下的配置基本一致。
  1. 右键单击计算机,点击属性:


  2. 配置JAVA_HOME


  注意:不要在目录值后面再添加分号,逗号之类的符号!
  3. 配置path


  修改系统环境变量Path,在最前面追加% JAVA_HOME %in,并以;和原路径分隔。再增加:“.;”。这是表示当前目录的意思。
  classpath问题:如果使用jdk1.5以上就不需要配置这个环境变量!JRE会自动搜索当前路径下的类文件及相关jar文件。
  测试安装环境是否安装成功
  运行àcmdà输入命令:java –version: 出现如下结果,则通过测试。


  输入javac,出现如下结果,则通过测试。







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2