Java 02 – 配置Java环境 编写第一个Java程序
目录
1 下载JDK并配置环境变量
1.1 下载安装包
官方下载网址: http://www.oracle.com/technetwork/java/javase/downloads;
(1) 点击Accept License Agreement, 接受JDK的许可证协议, 再根据自己的操作系统、系统位数(x86是32位, x86-64是64位)选择合适的JDK, 点击进行下载;
(2) 下载后, Windows系统版的JDK, 点击.exe文件即可进行安装, 一直下一步即可; 若是Linux系统, 下载后直接解压, 然后统一进行下一步配置.
现在普遍使用JDK 1.8.x版本进行开发, 建议安装1.8.x版本.
要求: 安装路径中不要有中文或者特殊符号(如空格、*等), 否则可能出现一系列不好解决的问题.
1.2 配置环境变量
为什么要配置环境变量?
程序的编译和执行需要用到
javac
和java
命令, 还可能需要用到其他命令, 系统将在bin
目录下查找相关程序;实际开发中, 不可能把程序都写到
bin
目录下, 所以需要让javac
、java
等命令在任意目录下都能访问到.
1.2.1 配置JAVA_HOME
(1) Windows系统的配置过程:
鼠标右键点击 [我的电脑] –> [属性] –> [高级系统设置] –> [环境变量]:
1) 新创建一个环境变量, 名为
JAVA_HOME
, 变量值为JDK所在目录;2) 在path中通过%%动态获取JAVA_HOME的值 ——
%JAVA_HOME%
. 例如:
JAVA_HOME=F:\jdk1.8.0_162
—— (JDK所在目录)
path=%JAVA_HOME%\bin;%path%
—— (不能覆盖掉原先的path变量值)
(2) Linux系统的配置过程:
1) 编辑配置文件, 加入环境变量:
# 输入如下命令, 再敲回车键, 编辑文件: vim /etc/profile # 按字母'i'开启插入模式, 然后在文件最后面加入如下内容: export JAVA_HOME=/usr/share/jdk1.8.0_162 # 这里是你的JDK解压后的绝对路径 export PATH=JAVA_HOME/bin:PATH export CLASSPATH=.:JAVA_HOME/lib/dt.jar:JAVA_HOME/lib/tools.jar # 按 ESC, 然后按 :wq , 意为保存并退出
2) 加载配置文件:
# 重新加载配置文件, 使其立即生效: source /etc/profile
1.2.2 检测环境变量
(1) Windows系统下的测试方法:
打开DOS命令行 ( [开始] –> [所有程序] –> [附件] –> [命令提示符] ), 任意目录下敲入javac
, 回车后, 若发现提示: ‘javac’不是内部或外部命令, 也不是可运行的程序或批处理文件.
, 说明环境变量配置未成功.
错误原因:
当前执行的程序如果不在当前目录下, Windows内部会在系统中已有的一个名为path的环境变量指定的所有目录中查找当前程序, 如果未能找到, 就会出现上述错误提示.
(2) Linux系统下的测试方法:
打开终端, 输入命令 java -version
, 查看当前安装的Java版本, 如果不报错, 说明环境变量配置正确.
1.2.3 扩展 – 配置临时环境变量
(1) Windows系统下临时环境变量的配置方式: 通过DOS中 set
命令完成:
set
— 用于查看本机的所有环境变量的信息;
set 变量名
— 查看具体一个环境变量的值;
set 变量名=
— 清空一个环境变量的值;
set 变量名=具体值
— 给指定变量定义具体值.
(2) 如何在原有环境变量值的基础上添加新值?
首先通过 %变量名%
操作符获取到原有环境变量的值;
然后添加新值后, 再将新值赋给该变量即可. 例如, 为path环境变量加入新值:
set path=新值;%path%
注意: 这种配置方式只在当前DOS窗口有效, 窗口关闭配置就会失效.
1.2.4 扩展 – 配置classpath
实际开发中, 可能会频繁地执行多个class文件, 这些class文件可能存储在不同的目录下, 若不做配置, 就需要频繁地在DOS窗口中切换class文件目录, 非常麻烦.
根据path环境变量的原理, 可以定义一个名为classpath环境变量, 将要运行的class文件所在目录定义在该变量中. 如: set classpath=c:\
classpath环境变量的作用类似于path环境变量, 但它的作用在于告诉JVM去哪里找到class文件.
1.2.5 环境变量path和classpath的作用
(1) path变量是Windows程序(可执行)文件的搜索路径, 即扩展名为.exe的程序文件所在的目录, 用于指定DOS窗口命令的路径.
(2) classpath变量是class文件(Java类文件)所在的目录, 用于指定类搜索路径, JVM就是通过它来寻找该类的class类文件的.
Windows系统下的JDK环境变量配置示例:
1.3 JVM如何查找类文件
如果没有配置classpath环境变量, JVM只在当前工作目录下查找要运行的类文件;
如果配置了classpath环境, JVM会先在classpath环境变量值的目录中查找要运行的类文件;
情形一: classpath值的结尾处有
;
—— JVM在classpath目录下没有找到指定的类文件, 就会在当前目录下再查找一次;情形二: classpath值的结尾处没有
;
—— JVM在classpath目录下没有找到指定的类文件, 不会在当前目录下查找, 即使当前目录下有,也不会运行.
默认加 .
, 表示当前目录.
2 编写我的第一个Java程序 – HelloWorld
2.1 编写步骤
2.1.1 定义一个类
/**
* 定义一个名为HelloWorld的类, 在类定义后加一对大括号
*/
public class 类名 {
// 在大括号里面添加一个主(main)方法/函数:
public static void main(String [] args){
// 在主方法的大括号内添加一行输出语句:
System.out.println("Hello World!");
}
}
2.1.2 示例代码
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
2.2 运行代码
在命令行模式中, 输入 javac
命令对源代码进行编译,生成字节码文件:
javac HelloWorld.java
编译完成后, 如果没有报错信息, 输入 java
命令对class字节码文件进行解释运行:
# 注意, 在类名后面不写.class
java HelloWorld
2.3 程序运行时的常见问题
(1) 错误: 找不到xxx.java文件.
原因: 文件扩展名隐藏导致编译失败; 路径错误或者文件名错误.
(2) 错误: 找不到或无法加载主类.
原因: jvm没有找到要运行的类, 一般是类名写错, 请检查大小写以及单词的拼写.
(3) 错误: 在类 Demo中找不到主方法, 请将主方法定义为:xxx.
原因: 类中没有定义主方法. 或者主方法写错.
(4) 错误: 非法字符: xxx.
原因: 代码中出现了中文字符.
2.4 代码执行流程
3 代码注释
上面写代码的时候, 用文字说明了每个步骤的作用, 这些文字就是注释.
3.1 注释概述
3.1.1 什么是注释
注释是用于解释说明程序的文字, 程序编译、运行时不会被解析.
3.1.2 注释的作用
a. 解释说明程序, 提高代码的可读性;
b. 帮助开发人员调试错误.
3.2 Java中的注释
(1) 单行注释:
// 这是单行注释
(2) 多行注释:
/*
这是多行注释
*/
(3) 文档注释 —— 这是Java特有的:
JDK的 javadoc
工具能够提取解析Java源文件中的文档注释及代码, 并将这些内容形成一个HTML文档 —— 对程序进行说明(生成一套以网页文件形式体现的该程序的说明文档).
/**
* 这是文档注释
* @author 作者是马瘦风
* @version 版本是 v 0.1
*/
3.3 注释示例代码
/**
* 这是我的第一个Java程序-HelloWorld
*
* @author Heal Chow
* @date 2019/02/21 23:38
*/
public class HelloWorld {
/*
* 这是main方法, 是程序的入口方法, 所有代码的执行都是从main方法开始的
*/
public static void main(String[] args) {
// 这是输出语句
System.out.println("Hello World!");
}
}
说明: 示例代码可在 我的GitHub上 查看并下载.
(全文完)
(感谢阅读, 转载请注明作者和出处 瘦风的南墙 , 请勿用于任何商业用途)