一、快速上手第一个Java程序
1.1 需求说明
要求开发一个Hello.java程序,可以输出“Hello,world!”
1.2 开发步骤
- 将Java代码编写到扩展名为Hello.java的文件中 ```java //这是Java的快速入门,演示Java的开发步骤 //对代码的相关说明 //1.public class Hello 表示Hello是一个类,是一个public公有的类 //2.Hello{ } 表示一个类的开始和结束 //3.public static void main(String[] args) 表示一个主方法,即我们程序的入口 //4.main(){ } 表示方法的开始和结束 //5.System.out.println(“Hello,world~”) 表示输出”Hello,world~”到屏幕 //6.;表示语句结束
public class Hello {
//编写一个main方法
public static void main(String[] args) {
System.out.println("Hello,world~");
}
}
2. 通过javac命令对该文件进行编译,生成.class文件<br />* 打开保存Hello.java的文件夹<br />* 在地址栏全选并输入cmd回车,键入javac Hello.java并回车<br />注意,此时可能会报错<br />![image.png](https://cdn.nlark.com/yuque/0/2021/png/12677686/1629681922046-043b05c7-b93e-4828-9849-d5a447558b77.png#clientId=uad9d2b76-e6de-4&from=paste&height=319&id=u79f61578&margin=%5Bobject%20Object%5D&name=image.png&originHeight=471&originWidth=927&originalType=binary&ratio=1&size=88685&status=done&style=none&taskId=u657a2461-3aea-4d74-a588-17db88a7ad3&width=628.5)<br />原因是我们的命令行程序是使用gbk编码的,我们的程序源文件中也同样使用了中文,如果没有使用gbk编码,就会产生以上错误<br />解决方法:回到sublime text 选择文件--设置文件编码--Chinese Simplified(GBK) 重新保存文件<br />然后再回到命令行窗口键入javac Hello.java并回车,此时成功生成class文件
2. 通过java命令对生成的class文件进行运行<br />在DOS命令行键入java Hello并回车,屏幕输出Hello,world~ 运行成功<br />注意不要在Hello后面加.class,加了反而会报错
<a name="Q8E0t"></a>
#### 1.3 运行原理示意图
![](https://cdn.nlark.com/yuque/0/2021/jpeg/12677686/1629682790250-745f1230-9ab3-4b1e-b105-4df44370cf5d.jpeg)
<a name="LhxUN"></a>
### 二、Java执行流程分析
![SmartSelect_20210823-101237_HD.jpg](https://cdn.nlark.com/yuque/0/2021/jpeg/12677686/1629684791826-ee8ecd40-7b76-40e5-8883-16dfb474b120.jpeg#clientId=u3ce44f5a-36db-4&from=paste&height=150&id=u5e95a65a&margin=%5Bobject%20Object%5D&name=SmartSelect_20210823-101237_HD.jpg&originHeight=300&originWidth=1335&originalType=binary&ratio=1&size=173380&status=done&style=none&taskId=ud63dc4cc-f5b7-401a-be0a-ad4bd423c4f&width=667.5)
<a name="Jgpt3"></a>
#### 2.1 什么是编译
javac Hello.java
1. 有了Java源文件,通过编译器将其编译成JVM可以识别的字节码文件
1. 在该源文件目录下,通过javac编译工具对Hello.java文件进行编译
1. 如果程序没有错误,没有任何提示,但在当前目录下会出现一个Hello.class文件,该文件成为字节码文件,也是可以执行的java的程序
<a name="Cmwl4"></a>
#### 2.2 什么是运行
1. 有了可执行的Java程序(Hello.class字节码文件)
1. 通过运行工具java.exe对字节码文件进行执行,本质就是.class装载到JVM机执行
<a name="ml1uR"></a>
#### 2.3 Java程序开发注意事项
对修改后的Hello.java源文件需要重新编译,生成新的class文件后,再进行执行,才能生效。
<a name="Hm4H3"></a>
### 三、Java开发注意事项和细节说明
1. Java源文件以“.java”为拓展名,源文件的基本组成部分是类(class),如本例中的Hello类
1. Java应用程序的执行入口是main()方法,它有固定的书写格式:<br />public static void main(String[] args) {...}
1. Java语言严格区分大小写
1. Java方法由一条条语句构成,每个语句以“;”结束
1. 大括号都是成对出现的,缺一不可。【习惯,先写{}再写代码】
1. 一个源文件中最多只能有一个public类。其他的类个数不限<br />编译后,每一个类,都对应一个.class
1. 如果源文件包含一个public类,则文件名必须按该类名命名!
1. 一个源文件中最多只能有一个public类。其他的类个数不限,也可以将main方法写在非public类中,然后指定运行非public类,这样入口方法就是非public的main方法
<a name="OdIXR"></a>
### 四、Java学习方法
1. 学习动力源自需求
1. 工作需要
1. 跳槽,对方要求
1. 技术控
2. 学习新技术前看是否能用传统技术解决
1. 能解决。但是不完美
1. 解决不了
3. 引出我们学习的新技术和知识点
3. 学习新技术或者知识点的基本原理和基本语法(不要考虑细节)
3. 快速入门(基本程序,crud)
3. 开始研究技术的注意事项,使用细节,使用规范,如何优化<br />没有止境,技术魅力
<a name="dIkAY"></a>
### 五、Java基础 - 转义字符
<a name="R77tK"></a>
#### 5.1 Java常用的转义字符
1. \t :一个制表位,实现对齐功能
1. \n :换行符
1. \\ :一个 \
1. \" :一个 "
1. \' :一个 '
1. \r :一个回车
<a name="BZkXi"></a>
#### 5.2 说明
1. 在控制台,按上下键可以快速键入历史记录,按 tab 可以快速补齐
1. 如果需要输出 \\,需要键入 \\\\
1. 注意回车和换行的区别,回车是回到句首,覆盖输出<br />比如代码:System.out.println("我在学习Java\r欧耶");<br />输出结果:欧耶学习Java
<a name="dbvSn"></a>
### 六、初学Java易犯的错误
<a name="k6mrF"></a>
#### 1. 找不到文件
解决方法:源文件名不存在或者写错,或者当前路径错误
<a name="TC4je"></a>
#### 2. 主类名和文件名不一致
解决方法:声明为public的主类英语文件名一致,否则编译失败
<a name="KyfwR"></a>
#### 3. 缺少分号
解决方法:编译失败,会有提示信息,注意错误出现的行数,再到源代码中指定位置改错
<a name="x1BjZ"></a>
#### 4. 常见错误总结
学习编程最容易烦的错是语法错误(初学者)。Java要求你必须按照语法规则编写代码,如果你写的程序违反了语法规则,例如:忘记了分号,大括号,引号;或者拼错了单词;Java编译器都会报语法错误。尝试着去看懂编译器所报告的错误信息。<br />举例:
- 1 -> l
- 0 -> o
- 英文符号写成了中文符号 尤其是分号、引号
- void -> viod 拼写错误
- 不好修改的错误其实是业务错误,环境错误
<a name="kRHxf"></a>
### 七、Java基础 - 注释(comment)
<a name="KigQW"></a>
#### 7.1 功能介绍
用于注解说明解释程序的文字就是注释,注释提高了代码可读性;注释是一个程序员必须要具有的良好编程习惯。将自己的思想通过蛛丝先整理出来,再用代码去体现。
<a name="IAIVD"></a>
#### 7.2 Java中的注释类型
1. **单行注释**<br />格式://注释文字
1. **多行注释**<br />格式:/* 注释文字 */
1. **文档注释**<br />注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页形式体现的该程序的说明文档,一般写在类。
基本格式:
```java
/**
* @author HarborGao
* @version 1.0
*/
所有文档注释 可参考菜鸟教程
如何生成文档注释
控制台键入 javadoc -d 保存位置 -xx -yy Demo.java
-xx -yy是所使用到的注释
八、Java代码规范
- 类、方法的注释,要以javadoc的方式来写
- 非Java Doc的注释,往往是给代码维护者看的,着重告诉读者为什么这样写,如何修改,注意事项等
- 使用 tab 操作,实现缩进,默认整体向右边移动,用 shift+tab 整体向左移
- 运算符和 = 两边习惯性各加一个空格。比如 2 + 4 * 5 + 345 - 89
- 源文件使用 utf-8 编码
- 行宽度不要超过80字符
- 代码编写次行风格和行尾风格
行尾风格:
次行风格:
九、DOS命令(了解)
9.1 DOS介绍
Disk Operating System 磁盘操作系统,简单说一下windows的目录结构。
9.2 相关的知识补充
相对路径:从当前目录开始定位,形成的一个路径 绝对路径:从顶级目录(比如D:),开始定位,形成的路径
需求:从 abc\test200 访问 hello.txt
相对路径 ....\abc2\test200\hello.txt
绝对路径 d:\abc2\test200\hello.txt1
9.3 常用的DOS命令
- 查看当前目录有什么
dir dir d:\abc\test
- 切换到其他盘下:盘符号 cd
比如切换到c盘:cd /D c: (/D 是固定形式,不是当前在D盘所以/D) - 切换到当前盘的其他目录下(使用相对路径和绝对路径)..\表示上一级目录
相对路径 ....\abc2\test200
绝对路径 d:\abc2\test200
- 切换到上一级: cd ..
- 切换到根目录: cd \
- 查看指定的目录下所有的子级目录:tree 指定目录
- 清屏:cls
- 退出DOS:exit
- 其他常见指令:
md 创建目录
rd 删除目录
copy 拷贝文件 比如:copy ok.txt e:\ok.txt
del 删除文件
echo 创建文件并输入内容 比如:echo ok > test.txt
type 创建文件并输入空内容 比如:type nul > abc.txt
move 剪切 比如:move ok.txt e:\ok.txt
十、Java API文档
- API(Application Programming Interface,应用程序编程接口)是Java提供的基本编程接口(Java提供的类还有相关的方法)。中文在线文档:https://www.matools.com
- Java语言提供了大量的基础类,因此Oracle公司也为这些基础类提供了相应的API文档,用于告诉开发者如何使用这些类,以及这些类里包含的方法。
- Java类的组织形式
- 举例说明如何使用:ArrayList类有哪些方法
- 包 -> 类 -> 方法
- 直接索引搜索
学习参考(致谢):
- B站 @程序员鱼皮 Java学习一条龙
- B站 @韩顺平 零基础30天学会Java