一、JDK的安装与卸载
下载JDK
1. 下载地址,点击进入:
www.oracle.com/technetwork/java/javase/downloads/index.html
点击下载JDK,会出现如图所示的下载列表界面。首先,点击”Accept License Agreement”,然后选择对应的版本,下载即可。
注:如果您无法确定您的windows版本,可以右键点击“计算机à属性”,即可查看系统信息:
菜鸟雷区
|
安装JDK
安装过程和普通软件安装没什么区别,过程中会让你选择JDK和JRE安装目录,采用默认即可。也就是说,通通点击“下一步”就能完成安装。
安装JDK——指定JDK安装目录
安装JDK——指定JRE安装目录
安装JDK——成功安装界面
出现如上画面代表,JDK安装成功。
卸载JDK
控制面板卸载即可
验证JDK是否安装成功
【1】方式1:
【2】方式2:
【3】方式3:
二、编写代码
1、编写源代码(程序员写程序)
(1)创建一个文件
Java代码文件就是纯文本文件,文件的拓展名叫做: .java
获得java源代码文件:
<1>新建一个文件夹
<2>在文件夹里面新建一个文本文档,给它起名字
<3>改后缀名为: .java
(2)创建一个类
<1>用记事本方式打开
<2>创建一个类
Public(公共的、公开的) + class(类) + 类名(必须是文件名,和文件名一致,包括大小写)
{
后面所写的代码都要在这一对大括号中间,不要超过这对大括号(目前)
}
(3)定义主方法
程序的起点 程序的开始
在一个类中,主方法只能有一个
固定写法:
public static void main(String[]args){ }
后面学到方法或是函数的时候,在一个类里面可能会写各种方法。
比如:public static void add(int a,int b){ }
(4)在主方法中添加功能代码
需要完成功能:向dos控制台输出一段文字“hello java”
System.out.println(" ");
system :系统
out : 向外
print : 输出
ln :换行
“ ” :里面是一段文字
; :语句结束标志
2、编译源代码(将源代码编译成中立的字节码)
3、解释源代码(让虚拟机向平台解释字节码)
(1)配置环境变量
就是告诉dos窗口,“java.exe”和“javac.exe”这两个文件在这里,让dos指令到这儿来找。
<1> 打开“此电脑”
<2> 找到“java.exe”和“javac.exe”这两个文件,把他们的地址复制一下:
C:\Program Files\Java\jdk1.8.0_201\bin
<3> “此电脑”右击“属性”
<4> 打开“高级系统设置”
<5> 点开Path
<6> “新建”--> “粘贴路径”
Win 7是这样显示的:
每一个路径都用;隔开!
<7> 尝试编译执行刚才写的代码
编译成功,获得字节码文件
Java后面放的是类名,不是文件名!
三、补充
(1)配置JAVA_HOME
为什么要配置?我们先来看一看下面:
<1> 打开高级系统设置,新建Path2 :C:\Program Files\Java\jdk1.8.0_201\jre\bin
<2> 新建Path3 : C:\Program Files\Java\jdk1.8.0_201\lib
<3>发 现:Path和Path2和Path3前半部分都是一样的,
即:“C:\Program Files\Java\jdk1.8.0_201”
假设系统变量里面还有很多其他地方也都指向JDK里面不同的目录,有一天,JDK版本换了,或者我将JDK移到了其他盘符。也就是说,JDK的重新安装,或是版本的更换、位置的更换都会造成环境变量里的Path、Path2、Path3等都要跟着修改。
那么如何降低修改量?
新建这样一个环境变量:JAVA_HOME
那么Path2、Path3就可以换一种写法:
%JAVA_HOME% (对其他环境变量的引用)
% %里面放环境变量中的另一个变量名,代表通过这个名字找到“JAVA_HOME”,然后找到“JAVA_HOME”里面的值,将这个值放到这儿替换掉“%JAVA_HOME%”。
Path2:
Path3:
这样做的好处?
当我的JDK换到别的地方了,或者更新了,我就不用大量修改Path2、Path3等,只需要修改JAVA_HOME即可。得到修改上的便利。
注意:
1、书写JAVA_HOME内容的时候,结尾不带 \
2、Path里面自带的环境变量,一个都别删,如果不小心删了,那么可能面临重做系统的风险!
总结:
- 在Path中引入JAVA_HOME,可以降低环境变量的维护工作量
- 后续其他技术可以使用的一个必要条件
如:Tomcat的启动要依赖系统中的JAVA_HOME。
Tomcat在启动的时候,就是用“JAVA_HOME”这个名字在环境变量中去找。如果名字换了,Tomecat就启动不了啦!
(2)配置classpath(了解)
<1> 为什么要配置?
当前dos命令窗口指向的位置在c盘,而不是e盘。如果此时我在这儿编译文件:javac Test.java
找不到文件!
因为Javac要不是在当前这个目录下去找,要不就是再给它一个指定的目录。
此时Javac后面只写了一个文件名,Javac就会默认在前面的目录去找。可是前面的C盘并没有哎,那就找不到喽。
怎么才能让它找到?(不想往E盘相应位置跳)
找不到类?
因为Java指令默认也是在前面的路径中找!前面路径没有这个啊!
那我们仿照编译的写法:
java E:/Java笔记/Java初步/myjava/Test
还是找不到?
因为Java指令会把后面的全部文字当成一个类名,不会识别后面的“E”为磁盘盘符,不会识别后面为文件夹的名字!即:不会识别其中的盘符和各层级的目录!直接把整体“E:/Java笔记/Java初步/myjava/Test”给识别成了一个类名!
那么究竟该怎么办?
classpath的作用就是告诉java指令到指定的目录中去寻找字节码文件。
<2> 配置classpath
告诉Java指令,每次在找Java字节码文件的时候,去“E:/Java笔记/Java初步/myjava”这个地方找
重新启动dos命令窗口:
由上图可知,已经成功打印!
接下来我们再建立一个文件夹:
改变类名:
运行失败?
刚才我们配置的classpath,让我们的Java指令只在myjava里面找,就算其他文件夹里面也有字节码文件也不去找。
如何让他好用一点?
变量值改为:“ .;E:/Java笔记/Java初步/myjava ”
“.”代表当前目录
“;”代表多个值给他分隔开
- 先在dos目前指向的目录中去寻找字节码,如果找不到,再去“E:/Java笔记/Java初步/myjava”里面去找!
因为当前myjava2里面有Test2.class,但我们用Test的时候(Test不在myjava2的目录里,而在myjava1里面)。那么Java2里面没有Java指令,他就会到myjava文件夹里面去找了。