java的几个概念

·SDK(Software Development Kit)一般指软件开发包,可以包括函数库、编译程序等。
·JDK(Java Development Kit)是面向JAVA开发人员使用的SDK,它提供了Java的开发环境和运行环境。

         JDK是JRE的超集,它包含JRE与开发工具(如编译器,调试器等)的所有内容。
·JRE(Java Runtime Enviroment)是指Java的运行环境,是面向Java程序的使用者,而不是开发者。JRE是java虚拟机运行的环境。

         JRE包含Java虚拟机(JVM),类库和其他文件,不包括编译器和调试器等开发工具。

https://blog.csdn.net/y396397735/article/details/82081240

Java是一种高级编程语言。
用高级语言编写的程序不能直接在任何机器上运行。
首先,需要将其翻译成特定的机器语言,javac编译器就专门来干这个事儿的,它把Java程序(含有的.java源代码文件)转换成机器代码(称为字节码或.class文件)。

Java虚拟机(JVM)是安装在我们计算机中的虚拟机,JVM自己的机器语言是字节码。
这样子Javac编译器就好处理啦,因为它只需要为JVM生成字节码就行了,而不是为每种类型的机器生成不同的机器代码。

JVM执行Javac编译器生成的字节码并生成输出就OK了。JVM正是java跨平台的原因。
所以,现在我们知道JVM的主要功能是执行编译器生成的字节码

每个操作系统都有不同的JVM,但是在执行字节码后它们产生的输出在所有操作系统中都是相同的。
这意味着在Windows上生成的字节代码可以在Mac OS上运行,反之亦然。
这就是我们将java称为平台无关语言的原因。

posted @ 2020-05-07 15:25  smz163  阅读(122)  评论(0)    收藏  举报