软件的定义:
一系列按照特定顺序组织的计算机数据和指令的集合
软件的交互方式:
1.图形化界面 GUI;
2.命令行方式 CLI;
Java语言特性:跨平台性;
java文件在jvm下是跨平台,但JVM不是跨平台
JRE:jvm+java程序所需的核心类库
JDK:JRE+java的开发工具
jdk安装文件夹最重要的文件夹名:bin(binary:二进制)包含jdk给我们的开发工具
bin文件下的javac.exe一闪而过的原因是:它不是属于图形化界面程序,而是一个命令行界面程序,windows下需要DOS进行打开。
DOS命令行,课程中常见的命令
dir:列出当前目录下的文件以及文件夹
md:创建目录 (make directory)
rd:删除目录
cd:进入指定目录 cd jdk*(正则表达式表明以jdk开头的文件都选中打开)
cd..:退回到上一级目录
cd\:退回到根目录
del:删除文件 del *;del *.*;del *.txt(*为通配符);
exit:退出dos命令行;
help: 帮助命令;若想知道某个指令的详细用法,例如cd,可以这样写:help cd
执行JAVA程序的两个步骤:(1)java源文件(程序员编写的*.java文件)----使用javac编译生成*.class文件(字节码文件)--- 使用java命令解释执行---生成特定平台的机器码--成功运行
环境变量:环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等
Java -vresion:查询本机的java jre版本号,注:一台机可能会装有多个java版本
因此可以使用 javac -version (版本号)进行指定版本编译
cmd.exe状态下输入help,SET指令可以查看环境变量 set path
Path环境变量临时设置:在cmd下设置的path只会在当前窗体进行设置,关闭cmd后path的值不会更改,所以仅仅只有当前的cmd有效,所以可以作为环境变量的临时配置方式。
临时环境变量,动态获取当前环境变量,并在后边添加,而不是重写:set path = e:\123\bin;%path%(这样写能有效获取之前path的值):这种写法的目的是为了可以动态加载不同版本的jdk或者mysql的程序,最好是吧动态加载的放在%path%前面,这样可以使让系统忽略后面名字相同的软件名,只执行前面那个标记的
注意:类名与文件名必须一致,不然javac编译报错
main(String[] args)中的String[] args什么意思
这是主类中的主方法的形式参数 ,是一个String 对象数组,用来保存java 应用程序后所带的参数,如同DOS命令中后面所带的参数。
如编写一个JAVA程序程序用来把一个位置文件复制到另一个位置,编译后程序名为copyfile.class ,将C:\a\1.txt复制到D:\b\下,文件名改为 b.txt,则在命令行解释执行:
java copyfile C:\a\1.txt D:\b\b.txt,注意这四个部分之间有空格,则两个参数字符串就存在数组args中,可以在程序中访问它们。
main方法是入口
public class helloworld{
public static void main(String[] args){
System.out.println("Hello World!");
for(String s : args){
System.out.println(s);
}
}}
cmd执行:javac helloworld.java
java helloworld 1.7988p 29ioy(Java执行的就是类的名字)
cmd输出:hello world!
1.7988p
29ioy
编写程序一个重要的点就是:阅读性是第一位(能让别人与自己都能看懂,才能进行维护与修改),功能性是第二位。