目录
1 Java入门
1.1 Java简介
Java是什么:
- Java是一门非常优秀的计算机语言
- 语言:人与人交流沟通的表达方式
- 计算机语言:人与计算机之间进行信息交流沟通的一种特殊语言
- Java之父:詹姆斯·高斯林(James Gosling)
知道了Java是什么之后,大家就会想,我们学完Java可以做什么呢?下面,我们就来聊一聊,Java的三大技术平台:JavaSE、JavaME、JavaEE
1.2 JDK的下载和安装
JDK:(JavaDevelopment Kit):Java开发工具包,也就是说必须要有JDK才能开发Java程序,所以,我们得先安装了JDK,然后才能进行Java程序的开发。
了解了JDK是什么之后,我们再来对JDK的版本做一个说明:
这么多的版本,大家不用记,了解即可。知道三个版本就可以了,这里我们标红了:JDK8,JDK11,JDK17。
JDK8是企业用的最多的版本,JDK11和JDK17是后续长期支持更新的版本。
了解了JDK的版本之后,下面呢,我们来学习JDK的下载
JDK的下载:
- 通过官方网站获取JDK(https://www.oracle.com/)
- 直接下载地址: https://www.oracle.com/java/technologies/javase-downloads.html
- 注意:针对不同操作系统,下载对应的JDK
JDK下载图解
JDK的安装:
JDK安装图解:
第一步:双击启动下载好的JDK软件,在弹出框界面选择是
第二步:看到如下界面,点击下一步
第三步:看到如下界面,不要着急安装,因为它默认会安装到C:\Program Files下面,在这里点击更改
第四步:看到如下界面,修改安装路径
修改路径后的界面如下,然后点击确定
第五步:看到如下界面,点击下一步,等待安装
第六步:看到如下界面,说明安装成功,点击关闭即可
JDK安装完成后,我们到安装目录下去看看 JDK的安装目录:
目录解释:
1.3 第一个程序
JDK安装完毕后,下面我们来开发自己的第一个Java程序。
首先,我们来说一下,Java程序的开发流程:
开发一个Java 程序,需要三个步骤:编写程序,编译程序,运行程序。
知道了Java程序的开发流程后,下面我们来实现第一个程序:
第一步:编写程序
① 在D盘根目录下新建一个文本文档文件,修改文件名为HelloWorld.java
② 选中HelloWorld.java文件,用Windows系统自带的记事本打开
③ 书写如下程序内容
④ 保存文件:Ctrl+s
注意:
- 文件后缀名是.java,文件类型是java文件
- 文件名和代码中类名一致
如果后缀名还是文本文档文件,需要按照下面的步骤,勾选文件扩展名
程序编写完毕后,要进行编译和运行程序。而编译和运行程序目前需要在DOS窗口下进行,因此我们先说一下如何打开DOS窗口
说完了如何打开DOS窗口,接下来,我们来学习编译和运行程序。
第二步:编译程序
- 格式: javac 文件名.java
- 范例: javac HelloWorld.java
第三步:运行程序
- 格式: java 类名
- 范例: java HelloWorld
如图所示:
最终再控制台输出了:HelloWorld。到此第一个程序开发完毕。
1.4 补充一个小知识_JDK11的新特性:
JDK11开始支持 java命令直接运行.java文件
- 格式: java 文件名.java
- 范例: java HelloWorld.java
1.5 常用DOS命令
在后续开发中,我们有些时候需要在DOS窗口,也就是我们前面见到的黑窗口下进行一些操作,所以,我们要掌握一些常用的操作命令。而这些命令,又需要在黑窗口下运行,所以,这里我们先讲解如何打开DOS窗口,这里我们讲解两种常见的方式:
- 直接在地址栏输入cmd,回车即可
- 通过运行窗口打开
① 按下win+R
② 输入cmd
③ 按下回车键
这样,我们就通过运行窗口打开了DOS窗口。
常用的DOS命令
1.6 Path环境变量
前面我们使用过JDK的bin目录下的javac和java命令,为什么我们能够直接使用呢?这里我们来讲解一下原理。而要讲解这个原理,我们就不得不提一下Path环境变量。
Path环境变量的作用:
- 它提供了windows命令行中指令的可执行文件(比如:.exe文件)路径,让我们在命令行中输入命令时,能够找到对应的可执行文件执行
- 简单说:让命令在命令行中使用有效
为了让大家更好的理解这句话,我们来做一个操作,验证一下:
- 在Path环境变量中配置QQ软件的命令行方式启动
- C:\Program Files (x86)\Tencent\QQ\Bin
如何配置呢?按照下图配置即可
配置完毕之后,我们到DOS窗口中,通过qq指令,就可以启动QQ软件了
由此可见,我们把.exe文件所在的路径配置到Path环境变量中,就可以使用.exe结尾的指令来启动程序了。这个时候,我们来说一下,为什么开始的时候我们能够直接使用javac和java指定了。
但是,由于这种配置,只配置了较少的命令,而我们在JDK的bin目录下还有很多的命令可以使用,比如:
jps,jpackage,jmap等。所以,我们要自己配置JDK的环境变量,为了后续的一些软件能够找到JDK的安装目录,我们分两步来完成:
Java环境变量的配置
第一步:配置JAVA_HOME变量
第二步:编辑Path变量
第三步:创建CLASSPATH
%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
2 IDEA
2.1 IDEA概述和安装
IDEA: 全称Intellij IDEA,是用于Java语言开发的集成环境,是业界公认的目前用于Java程序开发最好的工具
集成环境: 把代码编写,编译,运行,调试等多种功能综合到一起的开发工具
举例说明,我们前面开发一个Java程序,需要下面这些工具的配合:
而我们现在开发一个Java程序,只需要一个工具就可以了:
它把代码编写,编译,运行,调试等多种功能综合到一起了,这就是集成开发环境。除了IDEA以外,还有下面几种常见的用于Java程序开发的集成环境:
IDEA的下载和安装:
下载: https://www.jetbrains.com/idea
安装: 建议修改安装路径
安装图解:可以根据如下步骤完成IDEA的安装
2.2 IDEA中HelloWorld
安装完IDEA后,下面我们就来使用IDEA完成HelloWorld案例。
首先,我们来启动IDEA,启动的时候还有一些基本的配置,一起来看一下:
第一步:双击桌面上的IDEA图标,选择Do not import settings,点击OK
第二步:看到如下界面
选择:Evaluate for free,点击Evaluate
第三步:看到如下界面,点击Continue
第四步:看到如下界面,启动配置成功
接着,我们来完成HelloWorld案例:
这里先介绍下IDEA中的代码结构:
接着,我们说一下IDEA中完成HelloWorld案例的基本流程:
① 新建一个空项目(javase_code)
② 新建一个新模块(idea_test)
③ 在idea_test模块的src下新建一个包(com.itheima)
④ 在com.itheima包下新建一个类(HelloWorld)
⑤ 在HelloWorld类中编写代码(main回车,sout回车)
⑥ 在IDEA中运行HelloWorld
下面,我们就一起来完成IDEA中HelloWorld案例的编写,编译和运行
① 新建一个空项目(javase_code):
第一步:点击New Project
第二步:选择Empty Project,点击Next
第三步:修改项目名称,修改项目存储路径,点击Finish,弹出一个窗体,然后点击Create
第四步:看到如下界面,空项目创建成功
② 新建一个新模块(idea_test)
第一步:选择File,点击Project Structure…
第二步:在弹出的窗体中,按照1,2,3的步骤选择,来新建一个模块
第三步:在弹出的窗体中,默认选择Java模块,JDK选择的也是17,点击Next即可
第四步:在弹出的窗体中,修改模块名称,点击Finish
第五步:然后点击OK即可
这样我们建好了一个模块:
③ 在idea_test模块的src下新建一个包(com.itheima)
第一步:展开模块,按照1,2,3的步骤选择,来新建一个包
第二步:在弹出框里面输入包名,然后回车即可
这样我们建好了一个包:
④ 在com.itheima包下新建一个类(HelloWorld)
第一步:选中com.itheima这个包,按照1,2,3的步骤选择,来新建一个类
第二步:在弹出框里面输入类名,然后回车即可
这样我们建好了一个类:
⑤ 在HelloWorld类中编写代码(main回车,sout回车)
在类中编写代码,可以手动编写,也可以采用快捷方式编写
⑥ 在IDEA中运行HelloWorld
在代码中,右键选择Run ‘HelloWorld.main()’ 运行
在控制台输出了结果:
这样我们就完成了IDEA中HelloWorld案例。
回顾一下图中内容:
2.3 IDEA中基本配置&注释
第一个:修改背景主题为白色
第二个:修改字体大小
按照1,2,3,4进行设置即可
第三个:鼠标滚轮控制字体大小
第四个:控制字母大小写提示(取消勾选)
第五个:设置自动编译(打勾)
第六个:自动保存(参数为1)
第七个:设定参数提示(Info中全部打勾)
第八个:修改字符集
-
主题插件
Xcode Dark Theme
-
修改注释颜色
- 黑色主题:3CB371 绿色 77B767
- 白色主题:008000 绿色
-
我们说一下注释,那什么是注释呢?
- 注释是指在程序中添加的说明性信息
- 注释不参与程序运行,仅起到说明作用
这里我们再来介绍一下注释的分类:
了解了注释的作用和分类后,下面我们来对前面讲解过的HelloWorld案例添加注释:
/*
Java程序中最基本的组成单位是类
类的定义格式是:
public class 类名 {
}
*/
public class HelloWorld {
/*
这是main方法
main方法是程序的入口方法,代码的执行是从main方法开始的
*/
public static void main(String[] args) {
//这是输出语句,能够将""里面的内容输出到控制台,并且""里面的内容是可以修改的
System.out.println("HelloWorld");
System.out.println("Java");
}
}
有了注释以后,我们再来看这段代码,明显就容易理解了。后面大家自己在编写代码的时候,也要多写写注释,在实际开发中,我们编写的程序也是要添加注释的。这样既方便自己阅读,也方便别人阅读
2.4 IDEA中常用快捷键
为了提高我们后续写程序的效率,这里呢,我们来讲一些IDEA中常用的快捷键:
-
快速生成main方法和输出语句
- main方法:main或者psvm,回车
- 输出语句:sout,回车
-
常用快捷键
- Ctrl+D:复制数据到下一行
- Ctrl+X:剪切数据,可以用来删除所在行
- Ctrl+Alt+L:格式化代码,建议自己写代码的时候就注意格式
- Ctrl+/:对选中的代码添加单行注释,如果想取消注释,再来一次即可
- Ctrl+Shift+/:对选中的代码添加多行注释,如果想取消注释,再来一次即可
2.5 IDEA中模块操作
IDEA的基本使用我们掌握了,最后呢,我们再来说一下,IDEA中的模块操作,而关于模块操作呢,分为三种:
- 新建模块
- 删除模块
- 导入模块
下面我们分别来操作一下。
新建模块: HelloWorld案例中讲解过了,这里就不再讲解了,想不起来了,翻到上面去看看
删除模块: 删除模块又分为从工作区删除和从硬盘删除,你可以根据自己的需要,选择对应的方式进行删除
导入模块: 建议把模块复制到空项目所在路径下,然后找到新建模块的地方,只不过这一次不是新建模块,而是导入模块,所以,要选择Import Module
找到要导入的模块,点击OK
然后一路next,直到出现如下的界面,点击Overwrite即可
看到下面的界面,点击Finish
最后点击OK即可
这样我们就成功的导入了一个模块:
导入模块的注意事项:
- 把模块复制到空项目所在路径下
- 出现如下错误,知道如何处理
3 基础语法
3.1 字面量
那什么是字面量呢?
- 直接写出来的人可以理解的数据,在java中叫做字面量
- 举例:“HelloWorld”,666,13.14
那Java中有哪些类型的字面量呢?
/*
字符串字面量: 用双引号括起来的内容。"HelloWorld","黑马程序员"
整数字面量: 不带小数的数字。666,-88
小数字面量: 带小数的数字。13.14,-5.21
字符字面量: 用单引号括起来的内容。'A','0','我'
布尔字面量: 布尔值,表示真假。true,false
*/
public class LiteralDemo {
public static void main(String[] args) {
//字符串字面量
System.out.println("HelloWorld");
System.out.println("黑马程序员");
//整数字面量
System.out.println(666);
System.out.println(-88);
//小数字面量
System.out.println(13.14);
System.out.println(-5.21);
//字符字面量
System.out.println('A');
System.out.println('0');
System.out.println('我');
//布尔字面量
System.out.println(true);
System.out.println(false);
}
}
3.2 数据类型
刚才我们学习了字面量,而Java是一种强类型语言,针对每种数据都给出了明确的数据类型,那我们刚才学习的几种字面量分别应该是什么类型的呢?
那为什么会有不同的数据类型呢?因为
- 不同的数据类型分配了不同的内存空间
- 不同的内存空间,所存储的数据大小是不一样的
在讲解不同的数据类型前,这里我们先普及一个小知识,就是字节的概念:
计算机中存储数据的最小单位是:字节(byte),用B表示。
我们可以看一下硬盘存储的文件:以字节为单位
为了帮助大家更好的理解字节这个单位,我们来说一下,常见的存储单位:
1TB = 1024GB
1GB = 1024MB
1MB = 1024KB
1KB = 1024B
我们再来说Java中的数据类型
基本数据类型的内存占用和取值范围
说明:E+38表示:乘以10的38次方。同理E-45表示:乘以10的负45次方
整数默认是:int类型
浮点数默认是:double类型
这样呢,我们就了解了Java中的8种基本数据类型,以及每种数据类型占用字节的情况和取值范围。关于数据类型
3.3 变量
学完后数据类型后,下面呢,我们来学习Java中非常重要的一个知识:变量。
那为什么要有变量呢?看这里,我们写了一段代码,在控制台显示商品的促销活动:
结果,老板觉得,这个价格有点高,怕销售不好,所以决定再降100元,要求把所有的998的地方修改为888。于是你就开始改代码,改完之后如下:
结果呢?老板又觉得不划算,让你还是改回998吧,这个时候,你就要哭了。还好要修改的地方不多,要是有很多地方都要进行类似的操作,那多麻烦啊,有没有简化的方式呢?
答案当然是有的,我们找一个空间存储数据:888,并给它起个名字:price
这样我们的代码就可以写成这个样子:
如果要修改price里面的数据,我们只需要修改一处就可以了,代码不需要改动,但是却实现了任意修改price的效
果
其实,这就是Java中的变量技术。有了它之后,我们就可以把变化的数据用一个变量存储,代码正常编写即可,如果需要修改数据,我们修改变量的值就可以了。那什么是变量呢?
- 变量就是内存中的存储空间
- 空间中存储的数据是可以发生改变
知道了,什么是变量后,下面我们来说一下变量的定义格式:
- 格式: 数据类型 变量名 = 变量值;
- 范例: int price = 998;
根据变量名进行使用,可以输出,也可以修改值
/*
格式:数据类型 变量名 = 变量值;
*/
public class VariableDemo01 {
public static void main(String[] args) {
//定义一个int类型的变量,用来表示价格
int price = 998;
//输出变量
System.out.println(price);
//修改变量的值
price = 888;
//再次输出变量的值
System.out.println(price);
}
}
3.4 变量的案例
了解了变量的定义和基本使用后,下面我们来做两个案例,熟悉一下变量的使用
3.4.1 手机信息描述
需求:分析下图指定数据,看看哪些可以通过变量表示,并思考采用那种数据类型,最后通过程序实现指定数据:京东价,重量,颜色
分析:
① 京东价,重量,选择颜色这些字都是固定的,但是他们后面的数据是变化的,所以要用变量表示
② 价格,可以用double或者int类型来表示,这里我们用int类型表示;重量,用double类型表示;颜色,用String类型表示
/*
手机信息描述
*/
public class VariableTest01 {
public static void main(String[] args) {
//定义秒杀价变量
double price = 3599.00;
//定义颜色变量
String color = "蓝色";
//定义版本变量,纪录的是内存大小
int size = 8;
// System.out.println(price);
// System.out.println(color);
// System.out.println(size);
//为了输出效果好看一些,我加上一些内容
System.out.println("秒杀价是:"+price);
System.out.println("你选择的颜色是:"+color);
System.out.println("你选择的版本是:"+size);
//字符串字面值+任意的数据=字符串数据
}
}
3.4.2 疫情防控信息采集表
需求:分析右图信息,并通过程序实现
通过上图数据,我们可以根据变化的数据,提取出下图:
分析:
① String name = “风清扬”;
② int age = 36;
③ char gender = ‘男’; 也可以采用String类型表示
④ double temperature = 36.2;
⑤ boolean flag = true; 也可以采用char或者String表示
/*
疫情防控信息采集表
*/
public class VariableTest02 {
public static void main(String[] args) {
//定义变量
String name = "风清扬";
int age = 18;
char gender = '男';
double temperature = 36.2;
boolean flag = true;//输出数据
System.out.println("姓名是:" + name);
System.out.println("年龄是:" + age);
System.out.println("性别是:" + gender);
System.out.println("体温是:" + temperature);
System.out.println("是否接种过疫苗:" + flag);
}
}
3.5 变量的注意事项
变量的注意事项:
- 变量名不能重复
- 变量未赋值,不能使用
- 定义long类型变量,数据后面加L
- 定义float类型变量,数据后面加F
/*
变量使用的注意事项
*/
public class VariableDemo02 {
public static void main(String[] args) {
int age = 10;
// int age = 20;
// int money;
money = 20;
// System.out.println(money);
long money = 1000000000000L;
float price = 12.34F;
}
}
3.6 关键字
关键字:就是被Java语言赋予了特定含义的单词
我们先来看一下,曾经写过的代码中,出现的关键字:
了解了什么是关键字后,我们来说一下关键字的特点:
- 关键字的字母全部小写
- 常用的代码编辑器,针对关键字有特殊的颜色标记,非常直观
知道了关键字的特点后,这里我们给大家看看Java中的关键字:
虽然比较多,但是大家不用担心。因为:关键字,我们不需要专门记忆。这些关键字我们在开发中比较常用的,写的多了,你自然就记住了。
3.7 标识符
标识符: 就是给类,方法,变量等起名字的符号
比如,我们前面写类的时候,起的名字:HelloWorld,变量的时候,价格,price等,这就是标识符。
那这个符号你能随便写呢,当然是不能的,这里我们来看一下 标识符的组成规则 :由数字、字母、下划线(_)和美元符($)组成
了解了组成规则后,这里我们还得说一下 注意事项:
- 不能以数字开头
- 不能是关键字
- 区分大小写
判断下面哪些标识符不符合规则
bj b2 2b _2b class helloworld
按照我们讲解的规则,大家应该能够判断出来:2b和class是不符合规则的。
知道了标识符的组成规则和注意事项后,这里我们再说一下起名字常用的 命名约定:
- 小驼峰命名法
- 约定1:标识符一个单词的时候,首字母小写
- 范例1:name
- 约定2:标识符是多个单词的时候,第一个单词首字母小写,其他单词首字母大写
- 范例2:firstName
- 约定1:标识符一个单词的时候,首字母小写
- 大驼峰命名法
- 约定1:标识符一个单词的时候,首字母大写
- 范例1:Hello
- 约定2:标识符是多个单词的时候,每个单词首字母大写
- 范例2:HelloWorld
- 约定1:标识符一个单词的时候,首字母大写
一般来说,小驼峰命名法适用于对方法,变量等起名字。大驼峰命名法适用于对类,接口等起名字。
最后再强调一点,就是我们起名字,最好能够做到:见名如意:
比如,我们前面讲解过的变量的案例中,我们起的名字就做到了见名知意。