不会闲聊!!!不会扯淡!!!小UP只会分享与Java相关的学习资源
![7eb71e24e227febce17bf84fb650cc29.png](https://img-blog.csdnimg.cn/img_convert/7eb71e24e227febce17bf84fb650cc29.png)
本文相关知识点更偏向于实战型,由动力节点-Java研究院出品
适合Java编程绝对零基础的学员阅读;
书中理论与实践相结合,采用一个知识点对应一个经典小案例,深入浅出;
本Java教程对知识点的掌握程度进行了三个级别的描述:了解、理解、掌握,
了解的内容了解一下即可,掌握的内容不但要求理解,而且能够将代码实现;
强调一下,本文对知识点不会进行学术性研究,比较偏向实战;
通过本Java教程的学习,可以助您快速入门Java语言。
教程介绍传送门:
2020年魔鬼Java讲师上新-史上最丧心病狂的Java零基础教程zhuanlan.zhihu.com![ca3afd5af233776534fbd90a45ee5a5e.png](https://img-blog.csdnimg.cn/img_convert/ca3afd5af233776534fbd90a45ee5a5e.png)
在线观看传送门:
Java_2020年版Java零基础视频教程(Java 0基础,Java初学入门)_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.com![832c228b8f868b1f91013a05d3d3af2a.png](https://img-blog.csdnimg.cn/img_convert/832c228b8f868b1f91013a05d3d3af2a.png)
windows系统当中显示文件扩展名
java源文件要求扩展名必须为.java,不能使用其他扩展名,有些操作系统默认不显示文件扩展名,大家可按照以下步骤,将文件的扩展名显示出来(以win7系统为例):
![02665d45a9d7b09e874ff2b637999e73.png](https://img-blog.csdnimg.cn/img_convert/02665d45a9d7b09e874ff2b637999e73.png)
![aa2340c79c4a88a507122e396b6c7bdd.png](https://img-blog.csdnimg.cn/img_convert/aa2340c79c4a88a507122e396b6c7bdd.png)
![5a3ae30e8d6c8a49a7a4107620204461.png](https://img-blog.csdnimg.cn/img_convert/5a3ae30e8d6c8a49a7a4107620204461.png)
windows dos 常用命令
● 打开DOS命令窗口,使用快捷键:win + r,输入cmd,回车。
● dir命令:查看当前目录下所有的子文件或子目录。
● cd命令:切换路径,使用方法是:cd+目录路径,需要注意的是路径包括相对路径和绝对路径,对于windows来说从硬盘的根路径下开始的路径都是绝对路径,例如:C:Program Files、C:Program FilesJava等,所有的相对路径都是从当前所在目录作为起点开始查找的路径。另外cd ..切换到上级目录,cd 切换到根目录。
![9bb77472cd986cd454f9fce760d8f71b.png](https://img-blog.csdnimg.cn/img_convert/9bb77472cd986cd454f9fce760d8f71b.png)
● 切换盘符:直接输入c:,或者d:,然后回车即可。切换盘符不需要cd命令。
● del命令:删除文件或目录,例如:del *.class,删除当前目录下所有的.class文件。
● ipconfig命令:查看IP地址等信息,查看更详细的信息使用ipconfig /all。
● ping命令:查看两台计算机是否可以正常通信,例如:ping 192.168.1.100,正常情况下发送数据包和接收数据包数量相同并且没有延迟的时候表示通信正常,ping 192.168.1.100 -t表示一直发送数据包和接收数据包,ping http://www.baidu.com可以查看电脑是否可以正常上网。
● shutdown命令:设置定时关机,例如:shutdown -s -t 7200表示2个小时之后自动关机。
● mkdir命令:创建目录,例如:mkdir abc表示在“当前目录”下新建abc目录。
● cls命令:清屏。
● exit命令:退出DOS命令窗口。
文本编辑器EditPlus安装与配置
这里安装的EditPlus版本为:
![089949214dbf8ac75c4070421d4fb5c0.png](https://img-blog.csdnimg.cn/img_convert/089949214dbf8ac75c4070421d4fb5c0.png)
以下主要说一下对该工具的配置:取消自动备份、设置字体大小、设置缩进长度:
![65bc51853079bbce24980d472ff3ce10.png](https://img-blog.csdnimg.cn/img_convert/65bc51853079bbce24980d472ff3ce10.png)
![1379dd3d5568df839424d07192468de8.png](https://img-blog.csdnimg.cn/img_convert/1379dd3d5568df839424d07192468de8.png)
![bcedc2e868f47dd25c70bfdf7641a77d.png](https://img-blog.csdnimg.cn/img_convert/bcedc2e868f47dd25c70bfdf7641a77d.png)
![b45e91612849cfcc5bec73eb03285f03.png](https://img-blog.csdnimg.cn/img_convert/b45e91612849cfcc5bec73eb03285f03.png)
常用文本编辑快捷键
使用快捷键可以大大提高开发效率,从现在起你应该尽可能使用快捷键来代替鼠标,以下先列举出通用的文本编辑快捷键。当然,如果大家想熟练掌握,还是需要后期不断的使用:
● ctrl+c 复制
● ctrl+v 粘贴
● ctrl+x 剪切
● ctrl+s 保存
● ctrl+z 撤销
● ctrl+y 重做
● ctrl+a 全选
● home 光标回到行首
● end 光标回到行尾
● ctrl + home 光标回到文章开始
● ctrl + end 光标回到文章末尾
● shift + home 或 end 选中一行
● 鼠标双击 (选中一个单词)
● ctrl + shift + 右箭头或左箭头 (选中一个单词)
● ctrl + f 查找
JDK的下载与安装
Java语言由Sun(Sun Microsystems)公司开发,2009年时被Oracle(甲骨文)公司收购,所以目前JDK需要从Oracle下载,Oracle官网地址是https://www.oracle.com,这里我们学习Java10版本,所以下载JDK10,具体下载过程如下图所示:
![d6a45e62d535017be1f817d23f34e759.png](https://img-blog.csdnimg.cn/img_convert/d6a45e62d535017be1f817d23f34e759.png)
![be99ae2d36e12288b9f8cf31d265d73d.png](https://img-blog.csdnimg.cn/img_convert/be99ae2d36e12288b9f8cf31d265d73d.png)
![72f200210513ba12ba24ca592b0a8f1d.png](https://img-blog.csdnimg.cn/img_convert/72f200210513ba12ba24ca592b0a8f1d.png)
![457d075caf9f4bb9b00f9edaa29886f6.png](https://img-blog.csdnimg.cn/img_convert/457d075caf9f4bb9b00f9edaa29886f6.png)
注意:JDK10要求windows操作系统必须是64bit的。下载完成之后,直接双击
![5d9c0f4aa04ce2838e2ab9002e818c93.png](https://img-blog.csdnimg.cn/img_convert/5d9c0f4aa04ce2838e2ab9002e818c93.png)
进行安装,具体步骤如下所示:
![858c726f599a11dc2df3b1c5f4cac455.png](https://img-blog.csdnimg.cn/img_convert/858c726f599a11dc2df3b1c5f4cac455.png)
![68d2dcaaa7266ed180943f3c9872f2a8.png](https://img-blog.csdnimg.cn/img_convert/68d2dcaaa7266ed180943f3c9872f2a8.png)
![616fefc2a1d454864bdc2e67912df470.png](https://img-blog.csdnimg.cn/img_convert/616fefc2a1d454864bdc2e67912df470.png)
![044ae0aa8bb22cda09863fe64ef75cbb.png](https://img-blog.csdnimg.cn/img_convert/044ae0aa8bb22cda09863fe64ef75cbb.png)
![2ce185230c08c9c3dff5fad154e32da1.png](https://img-blog.csdnimg.cn/img_convert/2ce185230c08c9c3dff5fad154e32da1.png)
![298327e24e44b41b68f643aeababcc21.png](https://img-blog.csdnimg.cn/img_convert/298327e24e44b41b68f643aeababcc21.png)
JDK的bin目录
![15a54ec74b9570670106b773809e765e.png](https://img-blog.csdnimg.cn/img_convert/15a54ec74b9570670106b773809e765e.png)
javac.exe命令用来完成java程序的编译,java.exe命令用来完成java程序的运行。
Java编写helloworld
该程序大家目前不需要理解,照抄就行,包括大小写以及标点符号,这只是一个测试Java环境的程序,后期学习的过程中会让大家理解该程序的含义。首先新建
![44a935faadf2f17d249c3f2b1c3dc4c5.png](https://img-blog.csdnimg.cn/img_convert/44a935faadf2f17d249c3f2b1c3dc4c5.png)
文件,具体代码如下所示:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("动力节点-口口相传的Java黄埔军校");
}
}
编译HelloWorld程序
编译java程序需要使用JDK bin目录下的javac.exe命令,首先我们来看看这个命令是否可以在DOS命令窗口中使用,如下图所示:
![294b5ee80decb1b19900adfd4e7165b7.png](https://img-blog.csdnimg.cn/img_convert/294b5ee80decb1b19900adfd4e7165b7.png)
根据以上测试结果,说明在“C:UsersAdministrator”目录下javac命令是无法使用的,那么我们来切换到另外一个目录“C:Program FilesJavajdk-9.0.4in”再来测试,如下图所示:
![4c3852261e63f27bfcb9888c680bf59b.png](https://img-blog.csdnimg.cn/img_convert/4c3852261e63f27bfcb9888c680bf59b.png)
根据测试结果可以得出:windows操作系统默认是从当前路径下查找可执行命令文件的。但每一次使用javac命令的时候都需要切换到bin目录下,显然是很麻烦的,有什么比较方便的方法吗?我们先来研究一下ipconfig命令是怎么执行的,如下图所示:
![96f2e47c150627839ea814482a465a2b.png](https://img-blog.csdnimg.cn/img_convert/96f2e47c150627839ea814482a465a2b.png)
ipconfig.exe文件实际上在“C:WindowsSystem32”目录下,如下图所示:
![42fc04d6a0f9a9c0b3fe5ddd6d5bd202.png](https://img-blog.csdnimg.cn/img_convert/42fc04d6a0f9a9c0b3fe5ddd6d5bd202.png)
ipconfig命令为什么在命令窗口可以直接执行而不需要切换到命令所在目录呢?实际上是因为windows系统中的环境变量path在起作用。如下图所示,windows操作系统有这样的默认配置:
![cbc0da1a7a26d50973f5bb897a7a667b.png](https://img-blog.csdnimg.cn/img_convert/cbc0da1a7a26d50973f5bb897a7a667b.png)
我们来做一个实验,把上图path环境变量当中的“C:WindowsSystem32;”删掉。怎么删除呢?鼠标双击Path,将“C:WindowsSystem32;”删除,注意:System32路径后面的半角分号也需要删除,然后点击确定。将所有的DOS命令窗口全部关闭(注意:修改了任何环境变量,DOS命令窗口都需要关闭之后重新打开,这样新的环境变量才会生效),打开一个新的DOS命令窗口,测试ipconfig,如下图所示:
![b5967c8112cadb7115e59cf47068e8db.png](https://img-blog.csdnimg.cn/img_convert/b5967c8112cadb7115e59cf47068e8db.png)
根据以上测试,windows操作系统已经找不到ipconfig.exe文件了,接下来我们再重新恢复path环境变量的配置,配置环境变量path的步骤是这样的:在电脑桌面
![965519ad40b81219210c12911bf92370.png](https://img-blog.csdnimg.cn/img_convert/965519ad40b81219210c12911bf92370.png)
图标上点击鼠标右键,继续点击
![e2755d42a397a80374d261fe56cd5f9a.png](https://img-blog.csdnimg.cn/img_convert/e2755d42a397a80374d261fe56cd5f9a.png)
,在弹出的窗口上选择
![1c37bebf395cf11a9fee3ade69ae6c22.png](https://img-blog.csdnimg.cn/img_convert/1c37bebf395cf11a9fee3ade69ae6c22.png)
然后在弹出的
![4f57d08378447f5c51dcfc6ac2f1a055.png](https://img-blog.csdnimg.cn/img_convert/4f57d08378447f5c51dcfc6ac2f1a055.png)
窗口上点击
![45c9467176ecc5a31efb04656e5eae9d.png](https://img-blog.csdnimg.cn/img_convert/45c9467176ecc5a31efb04656e5eae9d.png)
,此时会弹出以下窗口:
![382b874478d4ac6e59dd186061ce351b.png](https://img-blog.csdnimg.cn/img_convert/382b874478d4ac6e59dd186061ce351b.png)
在上图的系统变量当中找到path环境变量,点击“编辑”,将“C:WindowsSystem32;”添加到path环境变量当中(注意:环境变量path当中有很多路径,路径和路径之间必须使用半角的英文分号进行分隔),然后点击确定,重新配置了环境变量需要关闭所有DOS命令窗口,打开一个新的DOS窗口测试ipconfig命令,如下图所示:
![3050efd032c75f327e36f4a9db35e4a5.png](https://img-blog.csdnimg.cn/img_convert/3050efd032c75f327e36f4a9db35e4a5.png)
根据以上讲解,我们怎么让javac命令可以使用呢?很简单,我们只要把“C:Program FilesJavajdk-9.0.4in;”路径配置到环境变量path当中即可,配置完成之后,再次测试javac命令,如下图所示:
![cfb5cb15e1eb1ab462857067620bb768.png](https://img-blog.csdnimg.cn/img_convert/cfb5cb15e1eb1ab462857067620bb768.png)
在javac命令后面添加“-version”参数可以查看编译器的版本,如下图所示:
![95b973cd8577305c53a8db2b5e1d7911.png](https://img-blog.csdnimg.cn/img_convert/95b973cd8577305c53a8db2b5e1d7911.png)
到这里,大家应该掌握环境变量path的配置了吧?通过以上内容的学习,大家应该思考这样一个问题:path环境变量是隶属于java的吗,它和java有关系吗?答案是:path环境变量隶属于windows操作系统,不属于java范畴,是windows操作系统搜索某个命令文件的路径依据。windows操作系统到底是如何搜索命令文件的呢?实际上它会先在当前路径下找,找不到的时候会自动去环境变量path的路径中查找,找到则执行该命令,找不到则在DOS窗口中提示错误信息。希望大家以后遇到类似的“在DOS命令窗口中输入某个命令时出现找不到命令”这样的问题都能够独立的解决。
通过以上的配置,javac命令已经可以使用了,那么它具体怎么使用才能编译java程序呢,接下来我们详细的讲解一下javac命令的具体使用办法。
javac命令的语法格式是:“javac java源文件路径”,非常简单,就是javac命令后面加上java源文件的路径,当然,之前我们说过,路径包括绝对路径和相对路径。也就是说javac后面的java源文件路径可以是绝对的也可以是相对的,如下图所示:
![d84e8e7ba5e6448433b3b0206911f7b4.png](https://img-blog.csdnimg.cn/img_convert/d84e8e7ba5e6448433b3b0206911f7b4.png)
![a30523e49bf5cdd574bd2e598a545618.png](https://img-blog.csdnimg.cn/img_convert/a30523e49bf5cdd574bd2e598a545618.png)
![90eff070c5e62a9718689ba66d95a2fb.png](https://img-blog.csdnimg.cn/img_convert/90eff070c5e62a9718689ba66d95a2fb.png)
我们把HelloWorld.java文件中的程序故意修改让其出现错误,再次编译,如下图所示:
public class HelloWorld {
public static void main(Strin[] args) {//String修改为Strin
System.out.println("动力节点-口口相传的Java黄埔军校");
}
}
![0c38d5ec721056ce2c95b5c0da8784c9.png](https://img-blog.csdnimg.cn/img_convert/0c38d5ec721056ce2c95b5c0da8784c9.png)
通过以上的测试,可以得出这样的结论:java源代码中存在语法错误,在编译的时候编译器会提示错误消息,并且不会生成class字节码文件。在以后的学习过程当中,编译的时候尽可能将错误信息记录起来,并且给出该错误的解决方案,久而久之不断积累,大家就会成为改错高手。
小结:通过本小节的学习,每位同学都必须掌握path环境变量的作用,以及它是怎么配置的,还有怎么使用javac编译java源程序。
运行HelloWorld程序
运行java程序的前提是已经正常生成了class字节码文件,本课程中生成的class文件是
![b5e65241e8c0c3b909911c61749655ea.png](https://img-blog.csdnimg.cn/img_convert/b5e65241e8c0c3b909911c61749655ea.png)
,我们称HelloWorld为类名。那么怎么运行呢,这个时候就需要借助JDK bin目录下的java.exe命令了,我们先来测试这个命令是否可以在DOS窗口中使用,如下图所示:
![26f93c5b00adf07e42d79068d3963cca.png](https://img-blog.csdnimg.cn/img_convert/26f93c5b00adf07e42d79068d3963cca.png)
经过测试,我们看到java.exe命令是可以在DOS窗口中直接使用的,其实只要javac.exe可以使用,那么java.exe就一定可以使用,因为javac.exe和java.exe都在JDK的bin目录下,之前的课程中这个目录已经配置到环境变量path当中,所以这里java.exe肯定也是可以使用的。
那么java.exe具体怎么使用呢,语法是:“java 类名”,需要注意的是java命令后面是类名,而不是class文件的名字,也不是class文件的路径,不能这样写java HelloWorld.class,也不能这样写java E:courseJavaProjects-JavaSEchapter01HelloWorld.class,只能这样写:java HelloWorld,它的运行原理是:在命令窗口中输入“java HelloWorld”回车之后,先启动的是类加载器,类加载器从硬盘上查找HelloWorld.class字节码文件,默认情况下类加载器只从当前路径下查找,查找到之后则将HelloWorld.class文件加载到JVM并执行,如果没有查找到则会出现错误信息(如果输入的是“java A”那么类加载器会从硬盘上查找A.class字节码文件,以此类推),如下图所示:
![a68a0e3b448b4d731254bea9a8d5ebb2.png](https://img-blog.csdnimg.cn/img_convert/a68a0e3b448b4d731254bea9a8d5ebb2.png)
由于默认情况下类加载器只从当前所在的路径下加载字节码文件,如果该字节码文件不存在会提示什么错误信息呢?请看下图:
![34ae79d83a8b4f3fd1501a65b1e81d8a.png](https://img-blog.csdnimg.cn/img_convert/34ae79d83a8b4f3fd1501a65b1e81d8a.png)
类加载器默认从当前路径下加载,那么可以指定让类加载器从指定的目录下加载class文件吗?答案是可以的,这个时候就需要借助classpath这个环境变量了(classpath环境变量隶属于java语言,专门给类加载器指路的),接下来我们来设置一下classpath环境变量,此处把classpath设置为E:,如下图所示:
![57387bf8277c6248b92fcad1e8b0f4cf.png](https://img-blog.csdnimg.cn/img_convert/57387bf8277c6248b92fcad1e8b0f4cf.png)
设置完成后关闭所有DOS窗口,重新开启新窗口,接下来看下图:
![3b8a2bb4ca8be91348d83f019214042e.png](https://img-blog.csdnimg.cn/img_convert/3b8a2bb4ca8be91348d83f019214042e.png)
通过以上的测试得知,当环境变量classpath=E:之后,chapter01目录下虽然有HelloWorld.class,并且当前目录就在chapter01下,但运行的时候却出现了以上错误信息,可见类加载器不再从当前路径下加载了。那我们把HelloWorld.class文件放到E:目录下呢?请看下图:
![fc794147da3fa182fb097ca943c0663e.png](https://img-blog.csdnimg.cn/img_convert/fc794147da3fa182fb097ca943c0663e.png)
通过以上的测试可以得出,当设置环境变量classpath=E:的时候,类加载器只去E:目录下加载class文件了,不再从当前目录下加载,也不会去其它目录下加载。这样对于以后的开发来说反而更麻烦了,因为每一次编译生成的class文件都要放到E:目录下类加载器才能找到,所以目前来说classpath环境变量是不需要配置的,因为classpath在没有配置的情况下,类加载器默认会从当前所在的目录下加载class,也就是说以后要想运行class首先要将DOS窗口的目录切换(cd命令)到class文件所在的位置,然后再运行。当然我们也可以把环境变量classpath配置为:classpath=.,因为.代表当前路径。
小结:通过以上内容的学习,我们知道classpath环境变量不属于windows操作系统,是java编程语言当中的一种机制,这种机制是专门为类加载器加载class文件时提供路径依据的。最终的结论是classpath环境变量目前是不需要配置!当然,随着后面内容的学习,大家会知道classpath环境变量总有一天是需要配置的,到那个时候大家可别忘了将“当前路径.”配置到classpath当中,例如:classpath=.;path1;path2;,如果没有把.配置到classpath当中,那么类加载器就不再从当前路径下加载class了。到此为止大家必须掌握两个重要环境变量,一个是windows操作系统的path环境变量,另一个是java语言的classpath环境变量。至于有些参考资料上还提到了JAVA_HOME等环境变量,其实这些环境变量对于我们目前来说是不需要配置的,以后用到的时候再说吧。