1.1 JVM、JRE、JDK
- JVM:Java 虚拟机(JVM)是运行 Java 字节码的虚拟机。JVM 有针对不同系统的特定实现(Windows,Linux,macOS),目的是使用相同的字节码,它们都会给出相同的结果。字节码和不同系统的 JVM 实现是 Java 语言“一次编译,随处可以运行”的关键所在。
- JRE:JRE 是 Java 运行时环境。它是运行已编译 Java 程序所需的所有内容的集合,包括 Java 虚拟机(JVM),Java 类库
- JDK:
- 三者的关系:
- JDK = JRE + 开发工具集(例如Javac编译工具等)
- JRE = JVM + Java SE标准类库
1.2 Java语言环境搭建
- 下载安装jdk:傻瓜式安装,下一步即可;建议:安装路径不要有中文或者空格等特殊符号;当提示安装 JRE 时,正常在JDK安装时已经装过了,但是为了后续使用Eclipse等开发工具不报错,建议也根据提示安装JRE。
- 配置环境变量:配置环境变量path,在任何目录下都可以使用java的命令行工具,例如java和javac
环境变量classpath需要配吗?classpath的作用是什么?
在dos命令行中敲入javac,出现错误提示:’javac’不是内部或外部命令,也不是可运行的程序或批处理文件,错误原因:当前执行的程序在当前目录下如果不存在,windows系统会在系统中已有的一个名为path的环境变量指定的目录中查找。如果仍未找到,会出现以上的错误提示。所以进入到 jdk安装路径\bin目录下,执行javac,会看到javac参数提示信息。每次执行 java 的工具都要进入到bin目录下,是非常麻烦的。可不可以在任何目录下都可以执行java的工具呢?根据windows系统在查找可执行程序的原理,可以将java工具所在路径定义到path 环境变量中,让系统帮我们去找运行执行的程序。
JAVA_HOME = bin的上一层目录
path = %JAVA_HOME%\bin
其实是可以不配的,classpath是配置生成的可执行的字节码文件的位置,如果配置了,系统就会去这个classpath路径下查找指定的.class文件.
1.3 使用命令行编译和运行java程序
- 编写一个java程序
- 在该源文件目录下使用javac编译java程序,如果程序没有出错会生成一个.class为后缀的文件,该文件称为字节码文件,也是可执行的java程序。
使用javac.exe命令编译我们的java源文件。格式:java 源文件名.java
- 使用java运行java程序。使用java.exe命令解释运行我们的字节码文件。格式:java 类名
注意:这里不用输入这个可执行文件的后缀.exe。如果输入了会出错。
- 几个常见问题以及解决办法
- 声明为public的类的类名应与文件名一致,否则编译失败
- 当用javac编译java程序找不到文件时,有三种情况可能造成这种情况。第一、源文件名写错或者不存在。第二、当前路径错误,你没有进入源文件所在目录下。三、后缀名隐藏问题。
- 使用java运行java程序时,提示找不到或无法加载主类时,有两种情况可能造成这种情况。第一、类文件名写错,尤其文件名与类名不一致时,要当心。第二、类文件不在当前路径下,或者不在classpath指定的路径下。
注意事项
单行注释
- 多行注释:注意:多行注释里面不允许有多行注释嵌套。
- 文档注释:java所特有的一种注释。注释内容可以被JDK提供的工具 javadoc 所解析,生成一套以网页文件形式体现的该程序的说明文档。
操作方式:javadoc -d 生成的文档目录名 -author -version java源程序文件名.java