1.JVM
- JVM(Java Virtual Machine),Java虚拟机
- JVM是Java平台无关性实现的关键
2.Java程序的执行过程
源文件(.java)-->编译器compiler--->字节码文件(.class)-->
解释器interpreter(JVM解释执行,把字节码解释成具体机器的执行指令)-->
最终平台可执行程序
(一次编译,到处运行)
3.JDK
- JDK(Java Development Kit),Java语言的软件开发工具包
- -javac ——编译器,将源程序转成字节码;
- -Java——运行编译后的Java程序
4.JRE
- JRE(Java Runtime Environment)
- 包括JVM、Java核心类库和支持文件
- 如果
只需要运行
Java程序,下载安装JRE即可 - 如果要开发Java软件,需要下载JDK
(JDK面向开发人员、JRE面向用户) - 在JDK中附带有JRE
5.JDK、JRE和JVM三者的关系
JDK中包含了JRE,JRE中又包含了JVM
- JRE = JVM + JavaSE标准类库
- JDK = JRE + 开发工具集(例如Javac编译工具等)
6.Java平台
- JavaSE Java标准版,开发如QQ、Office、Eclipse等桌面程序;
- JavaEE Java企业版,JavaSE+JSP等等Web开发需要的技术,主要用于电商网站、门户网站的开发。
- JavaME Java微型版,用于移动设备的开发,现如今用的非常少。
7.Java的执行流程
-
注意jdk配置环境变量时最好用
确切的绝对路径
: 配置好环境变量,重启cmd方生效;
-
准备一个文件,命名时候后缀为
.java
,即Java文件;
-
装了JDK,没有配置环境变量,编译时会报错:
配置好环境变量后编译成功:
编译成功,生成二进制字节码文件,如本文第二节所言:
执行程序: - 这里可以看到,一个Java文件中如果只有一个类时,最好
Java文件的命名
要跟代码中的class(类名)
相同,如此javac/java两个命令的参数便不会冲突;
8.Java带命令行参数的Java程序的执行流程
code:
class ArgsDemo{
public static void main(String[] args) {
System.out.println(args[0]);
}
}
执行出错:-
出错原因:在代码中设置了参数,在命令行执行时没有赋予参数,赋予参数即可执行: