编译运行一个简单的Java程序"Hello XX"
前言:
java有些高级编译器用着是是非常方便的,但是对于初学者并不建议使用。编程过程中很多东西都会由高级编译器自动生成,不利于初学者对于底层原理的理解和手感的锻炼。所以建议初学者只用记事本和命令行进行初期的学习,不要嫌low,这对初学者的学习很有何好处。
参考价值:已完结、无错误,可作为教程使用。
前期准备
打开记事本
打开Windows开始界面–>Windows附件–>记事本
写一个简单的代码
代码看不懂没关系西,以后总会看懂的 !
保存
文件名:xxx.java
编码要调到ANSI
打开命令行进行操作(敲黑板!!!)
cd到java文档存储的目录
使用javac程序对java文档进行编译
语法:javac 文档名.java
得到class文件,如图:
使用java程序运行class文件
退到D盘我们再执行class文件,发现找不到文件。
这是因为我们没有配置class文件的环境变量,为了让我们可以在任何路径执行class文件,我们需要配置classpath环境变量。
配置临时环境变量
为什么要配置”临时”环境变量?
java开发工具包一般存放在固定的文件夹里,所以我们只需要配置系统环境变量,并且平时几乎不需要改动。
但是class文件我们一般并不是存储在一个目录(文件夹)里。这次此我们要执行A目录里的class文件,下一次我们就可能要执行B目录里的文件,总是对系统环境变量改来改去不仅麻烦而且容易遗忘。
所以我们需要通过配置临时环境变量应对这种情况。
如何配置临时环境变量?
以下指令可以在任意目录下执行:
//查看所有环境变量set
//查看某个环境变量
set Path
//定义某个环境变量
set classpath=路径
//清除环境变量
set classpath=
临时配置环境变量有什么特点?
- 它实际上并不会改变系统的环境变量
- 只临时起作用,命令行窗口关闭后所有设置全部清零
在D盘运行class文件
清楚classpath变量,并在D盘建立一个新的java文档并编译
在D盘运行Hello文件
分别以两种方式设置临时环境变量,并进行以下测试:
设置classpath=路径;,执行Hello文件,删除”路径“中的class文件,并执行Hello文件
清除classpath,设置classpath=路径,执行Hello文件
测试结果的原理:
调用Java从程序执行class文件时,虚拟机会想寻找classpath中存储的目录下的class文件,之后分三种情况:没有设置classpath环境变量:
直接在当前目录下寻找对应的class文件,有则运行,没有则”报错“。
设置了classpath=路径;
虚拟机先查看存储在classpath中的目录下的class文件,若有则执行,若没有则查看当前目录下的class文件,若有则执行,若无则“报错”。
设置了classpath=路径
虚拟机先查看存储在classpath中的目录下的class文件,若有则执行,若没有则 “报错”。
*注:一般推荐使用 classpath=路径 的环境配置方式