Java程序的运行机制
计算机高级语言的类型主要有编译型和解释性两种,而Java语言是两种类型的结合。
Java首先利用文本编辑器编写Java源程序,源程序的后缀名为.java
;再利用编译器(javac)将源程序编译成字节码文件,字节码文件的后缀名为.class
;最后利用虚拟机(解释器,java)解释执行。如图所示:
JVM、JRE和JDK
JVM(Java Virtual Machine)就是一个虚拟的用于执行bytecode字节码的“虚拟计算机”。他也定义了指令集、寄存器集、结构栈、垃圾收集堆、内存区域。JVM负责将Java字节码解释运行,边解释边运行,这样,速度就会受到一定的影响。
不同的操作系统有不同的虚拟机。Java 虚拟机机制屏蔽了底层运行平台的差别,实现了”一次编译,随处运行”。Java虚拟机是实现跨平台的核心机制。如下图所示:
Java Runtime Environment(JRE)包含:Java虚拟机、库函数、运行Java应用程序所必须的文件。
Java Development Kit(JDK)包含:JRE,以及增加编译器和调试器等用于程序开发的文件。
JDK、JRE和JVM的关系如下图所示:
搭建Java开发环境
JDK下载与安装
下载JDK
1、下载地址:点击进入Oracle官网
JDK下载地址:http://www.oracle.com/technetwork/java/archive-139210.html
JDK8安装版:jdk-8u311-windows-x64.exe
JDK8免安装版:jdk-8u111-windows-x64-bin.zip
JDK11免安装版:jdk-11.0.13_windows-x64_bin.zip
安装
注意:安装JDK时不要有中文路径。
JDK目录
-
bin:二进制可执行文件,不支持直接双击运行,基于dos执行的命令
-
db:数据库文件
-
include:本地接口编程(头文件)
-
jre:java运行环境
-
lib:java开发工具包(jar包)
-
zip:jdk的源码
环境变量配置
环境变量:当需要运行某些程序命令时会先在当前文件夹中寻找,如果在当前目录下找不到,就会到设置的默认路径中去查找,如果发现在默认路径中找到程序的位置,就直接运行,这样就实现程序命令随叫随到。这个“默认路径”就是环境变量。
1、此电脑右键属性、高级系统设置、高级、环境变量。路径为:控制面板\系统和安全\系统。
2、新建系统变量,配置JAVA_HOME
,变量值为jdk的安装路径。
3、修改path的值,在值中加入 %JAVA_HOME%\bin
4、测试安装是否成功:命令行窗口输入java -version
classpath配置问题
classpath是我们类存放的根路径( 路径自己选),我们可以设置classpath来在任意路径来执行java的class类。(这样不需要切换盘符)。. 表示当前目录
。
如果使用JDK1.5以上就不需要配置这个环境变量,JRE会自动搜索当前路径下的类文件及相关jar文件。
OpenJDK和JDK收费问题
2019年后,JDK8后续更新的版本就开始收费了。但是,主要针对的是企业用户,对于个人学习者没有任何影响。
由于JAVA虚拟机的规范是开放的,任何人都可以去实现它。我们常用的JDK只是Oracle 公司的一种具体实现,其他公司甚至个人也可以根据规范自己开发。常见的JDK有如下几种:
-
Oracle JDK;
-
Open JDK:免费的开源实现,以GPL License发布,很多Linux发行版都会包含Open JDK;
-
IBM、亚马逊、SAP等大公司自己的JDK。
评论区