深度理解java环境变量配置及java第一个程序
1.4 准备书写第一个Java程序
1.4.1下载安装JDK (推荐版本8)
i.下载
- 官网下载:https://www.oracle.com/technetwork/java/javase/downloads/jdk13-downloads-5672538.html
ii.安装
-
按提示安装即可
-
安装的默认路径是:C:\Program Files\Java\jdk1.8.0_131\bin"
iii.检查安装是否成功方法
-
打开dos命令窗口
方法一:window+r
方法二:输入cmd
- 运行cmd,输入java-version输出当前JDK的版本就成功了(能够看到当前版本的信息)
1.4.2准备编写第一个Hello World
i.了解JDK的目录结构
ii.编写第一个程序
1、新建一个.java文件
(1)新建文本文档一定要显示文件的全部后缀名称
(2)文件后缀名是.java
(3)文件名首字母一定要大写
2、编写第一个程序
public class HelloWorld{
public static void main(String[] args){
System.out.println("HelloWorld");
}
}
注意:类名和.java文件名一定要一样,符号一定要是英文,不能是中文符号,否则无法编译。
3、运行第一个程序
方法一:window+r
方法二:输入cmd
-
在dos命令窗口输入.java文件所在的盘区 例如:c:
-
再输入cd ,进行切换到.java文件所在目录
C:\Users\wawjy>cd C:\Users\wawjy\Desktop\javacode\code01 C:\Users\wawjy\Desktop\javacode\code01>
-
通过javac命令进行编译,在dos命令窗口输入javac Helloworld.java进行编译.编译成功后生成.class文件
C:\Users\wawjy\Desktop\javacode\code01>javac HelloWorld.java
-
通过java命令解释执行,在dos命令窗口输入java Helloworld 进行运行
C:\Users\wawjy\Desktop\javacode\code01>java HelloWorldhelloworld
1.4.3配置环境变量
注意:在cmd中输入javac命令,结果显示javac不是内部或者是外部命令原因是由于没有配置环境变量。
C:\Users\wawjy>javac
'javac'不是内部或外部命令,也不是可运行的程序或批处理文件。
i.什么是环境变量?
环境变量:windows操作系统中在cmd里以命令的方式在去启动一个程序时,需要指定当前程序所在的路径,寻址方式是现在当前cmd所处的路径下去寻找,如果没有找到则去环境变量中的path中继续寻址。如果还没有,则报错。不是内部或外部命令,也不是可运行的程序。
ii.配置环境变量的目的
- 就是为了让计算机能够找到java以及javac命令。
**问题:**在安装完jdk之后,发现使用java -version没有问题,但是使用javac有问题,javac和java
是在同一个目录下的。为什么一个可以使用一个不可以使用?
**问题原因及解决方法:**在安装jdk的时候,默认在系统变量的path里添加一个路径:C:\ProgramData\Oracle\Java\javapath。而且里面包含了java.exe,但没有包含javac.exe,所以可以找到java命令
iii.如何寻找到javac命令,如何操作?
- 在cmd中进入到bin目录
- 将其路径配置到环境变量中√
**方案一:**在我的电脑->右击->属性->高级系统设置->环境变量->系统变量->path
增加如下配置:
C:\Program Files\Java\jdk1.8.0_131\bin
注意:重新启动cmd,然后继续测试。
**方案二:**在我的电脑->右击->属性->高级系统设置->环境变量->系统变量->配置JAVA_HOME
配置JAVA_HOME
- 方便对于不同的版本的JDK进行修改,防止path被修改错误
- 配置的变量名称叫JAVA_HOME后续学习使用tomcat、maven等技术时默认会在系统变量中去寻找JAVA_HOME
配置classpath
- 可以让计算机更快速找到字节码文件的所在路径
- 注意:一般配置时,配置项中要添加.;,这个.配置代表寻址当前路径(因为配置classpath之后,cmd命令不会在当前的路径目录中寻找到.class文件,只会到path环境变量中寻找.class文件,所以要在配置环境变量变量值前面加.?
- JDK1.5版本之后官方不推荐配置classpath
如何配置class_path文件
变量名(N):class_path
变量(V):.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;
//(jar是JDK1.5版本之前的结构框架)
-
如果没有配置classpath,在cmd中不同的路径下去编译以及解释执行字节码文件
-
编译时需要指定.java文件所在的全路径
C:\Users\wawjy>javac C:\Users\wawjy\Desktop\javacode\code02\Demo01.java
-
解释执行字节码文件时,需要通过-classpath指定路径位置
java -classpath C:\Users\wawjy\Desktop\javacode\code02\ Demo01
注意路径和字节码文件中间要用**空格分割**
-
1.5深入理解第一个HelloWord程序
1.5.1深入理解第一个程序
public class HelloWorld{
public static void main(String[] args){
System.out.println(HelloWorld);
}
}
- public公开的公共的修饰符用来修饰访问权限的
- class在java中class称之为类一个class就称之为一个类被public修饰的类称之为公共类,保证公共类的类名和.java文件的文件名一致。
- HelloWorld类名类名的起名要保证不能以数字开头
- {}代码块注意代码块是成对出现的
- static静态的共享的
- void返回值存在void证明无返回值
- main叫做方法名称注意main方法称之为主方法,主方法是一个程序的执行入口,程序进入主方法之后依次执行里面的代码。
- ()代表方法主要看见()就代表方法出现了
- String称之为字符串多个字符组成的一个字符序列"a" ”b“”ab“在java中通过双引号引起来的内容都称之为字符串。
- []代表数组出现了
- args形式参数的名称这个名称是可以随意更改的
- System.out.println()输出内容输出()里面的内容
- 方法:方法就是一个功能。
- “”字符串在输出语句中将“”引起来的部分进行原样输出
- ;一条语句的执行结束。
1.5.2检查程序常见易错点
public class 3Dmo{
public static mian(string[] arg){
system.out.println("helloworldde”);
}
}
i.编译报错
-
一定要注意中英文的符号问题,所有程序中的符号都是英文符号,中文符号一出现,就会编译报错
-
一定要注意大小写问题,java是严格区分大小写的
-
要注意public修饰的class的类名要和.java文件的文件名保持一致,否则编译报错
ii.运行错误
-
一定要注意书写单词的拼写 例如:main方法的定义:
public static void main(String[] args){}
iii.问题:在一个.java文件中是否可以存在多个class类
public class Demo02{
public static void main(String[] args){
System.out.println("hello world de demo02");
}
}
class Demo03{
public static void main(String[] args){
System.out.println("hello world de demo03");
}
}
- 在一个.java文件中可以存在多个class,但是能被public修饰的只能有一个
- 编译.java文件会将当前.java文件中的所有class全部编译为对应.class文件
- 注意:public修饰的class的类名要和.java文件的文件名保持一致