精华内容
下载资源
问答
  • Java虚拟机 jdk jre

    2019-07-26 12:49:51
    一、Java虚拟机 首先我们要了解Java程序执行有两步:编译、解释。 Java语言编写的程序经过编译,生成一种与平台无关的字节码( .class文件),而不会生成特定平台的机器码;但是这种字节码是不可执行的,需要使用...

    一、Java虚拟机

    首先我们要了解Java程序执行有两步:编译、解释。
    Java语言编写的程序经过编译,生成一种与平台无关的字节码( .class文件),而不会生成特定平台的机器码;但是这种字节码是不可执行的,需要使用Java解释器来解释执行,而Java虚拟机就负责解释。因为Java语言不是纯粹的编译型语言,也不是纯粹的解释型语言,它必须先编译再解释,即有了Java虚拟机的存在,负责解释
    在这里插入图片描述
    其次,虚拟机是一种抽象的计算机,它通过在实际的计算机上仿真模拟各种计算机功能来实现。Java虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还有相应的指令系统。Java虚拟机屏蔽了与操作系统平台相关的信息,是的Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改的运行,即Java虚拟机使Java语言拥有了跨平台特性。

    JVM——Java Virtual Machine(Java虚拟机)
    Java语言中负责解释执行字节码文件的是Java虚拟机,即JVM是可与运行Java字节码文件的虚拟计算机。

    所有平台的JVM向编译器提供相同编程接口,而编译器只用面向虚拟机,生成虚拟机能理解的代码,然后又虚拟机执行。

    Java编译器编译Java程序时,生成的是与平台无关的字节码,这些字节码不面向任何具体平台,只面向JVM。

    不同平台的JVM都是不同的,但他们提供相同的接口。JVM时Java程序跨平台的关键部分,只要为不同的平台实现了相同的虚拟机,编译后的Java字节码可在该平台上运行。

    JVM分为向上向下两个部分,所有平台的JVM向上提供给Java字节码程序的接口相同,但是向下适应不同平台的接口则互不相同。 即不同平台上的Java字节码程序都是相同的,但是这个字节码程序无法适应不同平台,所以JVM将其转换为平台适应的程序。

    参考自:

    https://blog.csdn.net/ytm15732625529/article/details/80383343
    https://blog.csdn.net/liyang_nash/article/details/78742623

    二、 jre 、 jdk

    JRE( Java Runtime Environment )Java运行环境,包含了Java虚拟机、Java基础类库,他是使用Java语言编写的程序运行所需要的软件环境,是提供给想要运行Java程序的用户使用的,还有所有的Java类库的class文件,都在lib目录下,并都打包成了jar。在操作系统上,虚拟机在/bin/client中的jvm.dll。

    JDK( Java Development Kit )Java开发工具包,是程序员用Java语言编写的Java程序所需的开发工具包,是提供给程序员用的。jdk包含了Java源码编译器javac,Java程序调试和分析工具:jconsole,jvisualvm等工具软件,以及Java编写所需的文档和demo实例子程序。jdk包括了jre。

    jre只能运行Java程序,而jdk可以开发Java程序。
    在这里插入图片描述

    参考自:

    https://www.cnblogs.com/lsw9/p/8685623.html

    展开全文
  • 1.JDK JDK=Java程序设计语言+Java虚拟机+Java类库 JDK是用于支持Java程序开发的最小环境。 2.JRE JRE=Java类库API中的Java SE API子集+Java虚拟机 JRE是支持Java程序运行的标准环境。

    1.JDK

    JDK=Java程序设计语言+Java虚拟机+Java类库
    JDK是用于支持Java程序开发的最小环境。

    2.JRE

    JRE=Java类库API中的Java SE API子集+Java虚拟机
    JRE是支持Java程序运行的标准环境。

    展开全文
  • java特性 JDK JRE JVM

    2020-05-27 16:20:45
    1简单性 2可移植性性(跨平台) 3面向对象 4高性能 5分布式 6动态性 7多线程 8安全性 JDK:java开发工具 。 JREJDK:java运行环境 。 JVM:JDKjava虚拟机

    1简单性 2可移植性性(跨平台) 3面向对象 4高性能 5分布式 6动态性 7多线程 8安全性
    JDK:java开发工具 。 JRE:JDK:java运行环境 。 JVM:JDK:java虚拟机
    在这里插入图片描述

    展开全文
  • 安装JDK时一定会在其子目录下面安装一个JRE,同时在安装的过程也会询问你是否要安装一个外部的JRE。如果我们选择安装则就同时拥有了两个jre。这两个JRE其实本质上是没有任何分别的。最主要的区别在于:JDK目录里面的...

    安装JDK时一定会在其子目录下面安装一个JRE,同时在安装的过程也会询问你是否要安装一个外部的JRE。如果我们选择安装则就同时拥有了两个jre。这两个JRE其实本质上是没有任何分别的。最主要的区别在于:JDK目录里面的JRE主要是设计用来运行JDK自带的那些工具的(Bin目录下)。而外部的JRE在安装的时候会自动注册到操作系统的path里面一般是:System32文件夹下面。因此我们只要安装了外部的JRE则运行Java程序时都是用的外部JRE来运行的(系统的默认path具有优先)。

    JVM只是JRE的一部分确切的说是JRE的一个动态链接库。
    JDK里面的工具(Bin目录下的那些很小的.exe文件)几乎都是用Java编写的(都存放在JDK目录下面的lib文件夹中的tools.jar文件中),之所以是以.exe文件的形式出现是为了免于输入冗长的执行代码(java -classpath JDK_HOME\lib\tools.jar com.sun.tools.javac.Main)。此处的exe文件仅仅是一个包装器以方便用户的使用。很多软件最后都打包成exe文件就是一种包装器。因此这些包装器的运行其实最终都是去调用tools里面相应的Java字节码来运行因此都依赖于JRE所以在JDK内部才有一个JRE。
    当我们电脑上安装了JBuilder等开发工具时它们都自带了自己的JDK,因此当我们运行Java程序的时候到底使用的哪一个JRE呢。这个是由java.exe文件来决定的。java.exe的作用就是找到相应的JRE来运行后面给出的.class文件。寻找逻辑如下:
    首先在自己的目录下面查找JRE若没有找到,然后去父目录下查找,最后去Windows的注册表中(HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment\)去找。而注册表中一般只有Client而没有Server虚拟机。所以输入
    java -server时候会说找不到。当然找到JRE以后还有一个版本验证的过程,那就是验证java.exe和此JRE版本是否一致,假若我们运行的是jdk1.3版本的java.exe文件然后找到的是却是jdk1.4的jre程序就可能会出错。
    我们在JRE/bin目录下面会看到有连个文件夹client和server。它们里面都会有一个jvm.dll文件这就是所谓的虚拟机。
    在我们运行java.exe文件的时候我们要确定两个事情:
    哪一个java.exe文件被执行,java.exe找到的是哪个JRE。
    具体运行的是哪一个Java.exe主要取决于环境变量path的设置,对于Windows系统来说C:\Windows\System32是默认的。
    因此我们再去添加指向我们安装的java.exe的环境变量时要注意与系统环境变量的先后关系。
    path=D:\JDK_HOME\bin;C:\Windows\System32(优先运行JDK_HOME里面的java.exe)
    和path=C:\Windows\System32;D:\JDK_HOME\bin;(优先运行系统目录下的java.exe文件)是不同的。因此当我们要想jre中(如ext目录)添加.jar文件时就要注意其匹配问题了。

    转载于:https://www.cnblogs.com/52Test/p/7575778.html

    展开全文
  • jdk jre jvm三者关系 JDK是JAVA的核心,包括...JVM(JAVA虚拟机),是可以运行JAVA代码的假想计算机,主要任务是把JAVA字节码编译成特定计算机的机器指令,是JAVA实现“一次运行,处处运行”的关键 JRE是JAVA运行环
  • JDK JRE Java虚拟机的关系。安装JDK时一定会在其子目录下面安装一个JRE,同时在安装的过程也会询问你是否要安装一个外部的JRE。如果我们选择安装则就同时拥有了两个jre。这两个JRE其实本质上是没有任何分别的。最...
  • JDK JRE JVM的区别 jdk:Java Development ...jvm:Java Virtual Machine Java虚拟机 JDK的包中有一个JRE的文件夹 JRE中有bin和lib文件夹,其中bin文件夹相当于就是JVM 所以可以说JDK包含了JRE,而JRE包含了JVM ...
  • java-jdk jre jvm

    2012-04-17 00:08:13
    JVM就是我们常说的java虚拟机,它是整个java实现跨平台的 最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类文件可 以在虚拟机上执行,也就是说class并不直接与机器的操作系统相对应,而是经过...
  • Jvm:Java虚拟机 JAVA VIRTUE MEACHINE JDK包括JRE,JRE包括JVM JVM不能独立安装没有JVM的单独安装包,JDKJRE可以独立安装 安装JDK时,JRE自动安装了,JVM也自动安装了 JAVA体系技术被分为三大块 JAVASE:标准版 ...
  • (1) 跨平台的原因:java程序编译后生成的是字节码文件(.class...(2) java虚拟机的组成: (3) jvm执行过程:1加载class文件,2分配内存,3清理垃圾。 (4) JRE(java运行环境):JVM+java类库 JDK(java开发工具包):jre...
  • Java初学:jdk jre jvm

    2021-07-10 22:10:12
    jdk:Java开发者工具 jre:Java运行环境 jvm:Java虚拟机(跨平台运行Java程序)
  • Java Virtual Machine是Java虚拟机,提供给java程序运行。Java程序需要运行在虚拟机上,不同的平台(Windows、linux)有自己的虚拟机,因此Java语言可以实现跨平台(java可以在不同的平台上运行)。 JRE Java ...
  • java jdk jre jvm

    2014-06-25 16:09:17
    JDK里面的工具也是用JAVA编写的,它们本身运行的时候也需要一套JRE,如C:\Program Files\Java\jdk1.5.x\目录下的JRE。而C:\Program Files\Java\目录下的JRE是用来执行我们自己编写的JAVA程序。当然,两套JRE中的任何...
  • JRE(Java Runtime Environment),是java运行时环境,包含了java虚拟机(JVM),java基础类库。 JDK(Java Development Kit),包含了JRE和java开发工具包。 虚拟机JVM和hotspot JVM虚拟机是运行java类文件的,...
  • JDK:java开发工具包 JRE:java运行环境 JVM:java虚拟机 JDK JRE(JDK包含) JVM(不能单独安装)
  • java基础回顾-JDK JRE JVM

    2021-04-20 19:38:54
    java复习--JDK JRE JVMJDK是什么?JRE是什么?JDKJRE的区别?1. JDK是什么2. JRE是什么3. JDKJRE的区别4....JDK是什么?...Java虚拟机、库函数、运行Java应用程序和Applet所必须文件。 JRE的超集,包含编
  • Java基础复习-JDK JRE JVM

    2021-06-09 22:04:21
    JDK JRE JVMJDKJREJVM JDK JDK(Java开发工具)由JRE + Java工具(javac,java,jconsole)组成 JRE JRE(Java运行时环境)由bin(JVM)+lib 组成 JVM ...JVM(Java虚拟机)用于编译和解释class文件
  • 先说说Java技术体系,传统意义上,Java技术体系包括以下部分:  ※ Java程序设计语言  ※ 各种硬件平台上的Java虚拟机  ※ Class文件格式  ※ JavaAPI类库  ※ 第三方Java类
  • JDK包含了JREJRE包含了JVM JDK: java development...JRE: java runtime environment, java运行时环境,针对java用户JVM: java virtual machine,java虚拟机 用来解释执行字节码文件(class文件)的。 JDK(Java Devel...
  • JAVAJDKJRE、JVM

    2020-08-17 21:36:15
    JDKJRE、JVM JDK:Java Development Kit (Java开发者工具) JRE:Java Runtime Environment(Java运行环境) JVM:Java Virtual Machine(Java虚拟机,可以用软件实现也可以用硬件)
  • JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的软件开发包,它提供了Java的开发化境和运行环境。 2).什么是JRE Java Runtime Enviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。...
  • java jdk jvm jre

    2011-05-26 22:39:00
    java 是由sun公司开发的绿色项目jdk是java development kits java开发包,里边包括 调试 运行 等...jre 为java SE runtime enviroment 是java运行环境jvm 是javaSe virtual machine java虚拟机,是jre里边的一个工具;
  • java jdkjre的区别

    2019-02-24 14:00:16
    大二下的第一堂java课老师布置了任务,让我们了解java jdkjre的区别,所以我就...jre(java runtime enveroment)是java的一个运行环境,相当于虚拟机,包含client文件下的jvm.dll(可能是虚拟机需要的文件) jdk(...
  • JavaJDKJRE和JVM

    2020-12-09 10:48:35
    JDK:Java Development kit java开发者工具 JRE:Java Runtime Environmentjava运行时环境 JVM:Java Virtual Machine java虚拟机
  • JVM:Java虚拟机,他的作用是来解释.class文件(Java跨平台核心) JRE:包含JVM和Java的一些常用类库 JDK:Java开发工具包,包含JRE,JVM 注:在安装了JDK后就用在单独安装JRE了,因为JDK包含JRE 跨平台: 为什么Java语言可以...
  • JVM:全称是Java Virtual Machine,译为Java虚拟机。是一个可以解释字节码的程序。 源代码(由程序员开发)——编译—— 字节码(由JVM读取和解释)————运行————结果 JRE:全称是Java Runtime ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 58,882
精华内容 23,552
关键字:

java虚拟机的jdkjre

java 订阅