JDK,JRE,JVM之间的区别和联系

JDK,JRE,JVM之间的区别和联系

  • JDK(Java SE Development Kit),Java标准开发包,它提供了编译、运行Java程序所需的各种工具和资源,包括Java编译器、Java运行时环境,以及常用的Java类库等。
  • JRE( Java Runtime Enwironment) , Java运行环境,用于运行Java的字节码文件。JRE中包括了JVM以及JMM工作所需要的类库,普通用户而只需要安装JRE来运行Java程序,而程序开发者必须安装JDK来编译、调试程序。
  • JVM(Java Virtual Machine),Java虚拟机,是JRE的一部分,它是整个java实现跨平台的最核心的部分,负责运行字节码文件。

我们写Java代码,用txt就可以写,但是写出来的Java代码,想要运行,需要先编译成字节码,那就需要编译器,而JDK中就包含了编译器javac,编译之后的字节码,想要运行,就需要一个可以执行字节码的程序,这个程序就是JVM (Java虚拟机),专门用来执行Java字节码的。


如果我们要开发Java程序,那就需要JDK,因为要编译Java源文件。


如果我们只想运行已经编译好的Java字节码文件,也就是*.class文件,那么就只需要JRE。JDK中包含了JRE,JRE中包含了JVM。


另外,JVM在执行Java字节码时,需要把字节码解释为机器指令,而不同操作系统的机器指令是有可能不一样的,所以就导致不同操作系统上的JM是不一样的,所以我们在安装JDK时需要选择操作系统。


另外,JVM是用来执行Java字节码的,所以凡是某个代码编译之后是Java宁节码,那就都能在JWM上运行,比如Apache Groovy, Scala and Kotlin等等。

简而言之,JVM提供了一个运行Java程序的虚拟环境,JRE包含了运行Java程序所需的一切,而JDK不仅包含了JRE,还提供了用于Java开发的工具。在实际开发中,如果你只需要运行Java程序,使用JRE就足够了;如果你需要进行Java开发,那么你需要安装JDK。 

你可能感兴趣的:(Java基础,java,jvm,开发语言)