Java的语法
Java基础语法
一、关键字
1.1 概念
被Java赋予了特定含义的英文单词。
| abstract | assert | boolean | break | byte |
|---|---|---|---|---|
| case | catch | char | class | const |
| continue | default | do | double | else |
| enum | extends | final | finally | float |
| for | goto | if | implements | import |
| instanceof | int | interface | long | native |
| new | package | private | protected | public |
| return | strictfp | short | static | super |
| switch | synchronized | this | throw | throws |
| transient | try | void | volatile | while |
1.2 第一个关键字class
表示定义一个类。创建一个类。
类:Java项目最基本的组成单元,一个完整的Java项目有可能会有成千上万个类来组成的。
class后面跟随的就是这个类的名字,简称:类名。
在类名后面会有一对大括号,表示这个类的内容。
1 | public class HelloWorld{ |
解释:class表示定义类。
类名:HelloWorld
HelloWorld后面的大括号表示这个类的范围。
2、 字面量
作用:告诉程序员,数据在程序中的书写格式。
| 字面量类型 | 说明 | 程序中的写法 |
|---|---|---|
| 整数 | 不带小数的数字 | 666,-88 |
| 小数 | 带小数的数字 | 13.14,-5.21 |
| 字符 | 必须使用单引号,有且仅能一个字符 | ‘A’,‘0’, ‘我’ |
| 字符串 | 必须使用双引号,内容可有可无 | “HelloWorld”,“黑马程序员” |
| 布尔值 | 布尔值,表示真假,只有两个值:true,false | true 、false |
| 空值 | 一个特殊的值,空值 | 值是:null |
1 | public class Demo { |
区分技巧
- 不带小数点的数字都是整数类型的字面量。
- 只要带了小数点,那么就是小数类型的字面量。
- 只要用双引号引起来的,不管里面的内容是什么,不管里面有没有内容,都是字符串类型的字面量。
- 字符类型的字面量必须用单引号引起来,不管内容是什么,但是个数有且只能有一个。
- 字符类型的字面量只有两个值,true、false。
- 空类型的字面量只有一个值,null。
3、变量
3.1 什么是变量?
变量就在程序中临时存储数据的容器。但是这个容器中只能存一个值。
3.2 变量的定义格式
数据类型 变量名 = 数据值; int a = 3;
3.2.1 格式详解
数据类型:限定了变量当中能存储什么类型的数据。
如果要存10,那么数据类型就需要写整数类型。
如果要存10.0,那么数据类型就需要写小数类型。
变量名:其实就是这个容器的名字。
当以后想要使用变量里面的数据时,直接使用变量名就可以了。
数据值:真正存储在容器中的数据。
分号:表示语句的结束,就跟以前写作文时候的句号是一样的。
3.2.2 常用的数据类型
整数:int
小数:(浮点数)double
举例:
1 | public class VariableDemo{ |
3.2.3 变量的注意事项
- 变量名不能重复
- 在一条语句中,可以定义多个变量。但是这种方式影响代码的阅读,所以了解一下即可。
- 变量在使用之前必须要赋值。
案例:
1 | public class VariableDemo2{ |
4、 数据类型
4.1 Java语言数据类型的分类
- 基本数据类型
- 引用数据类型(面向对象的时候再深入学习)
4.2 基本数据类型的四类八种
| 数据类型 | 关键字 | 内存占用 | 取值范围 |
|---|---|---|---|
| 整数 | byte | 1 | 负的2的7次方 ~ 2的7次方-1(-128~127) |
| short | 2 | 负的2的15次方 ~ 2的15次方-1(-32768~32767) | |
| int | 4 | 负的2的31次方 ~ 2的31次方-1 | |
| long | 8 | 负的2的63次方 ~ 2的63次方-1 | |
| 浮点数 | float | 4 | 1.401298e-45 ~ 3.402823e+38 |
| double | 8 | 4.9000000e-324 ~ 1.797693e+308 | |
| 字符 | char | 2 | 0-65535 |
| 布尔 | boolean | 1 | true,false |
说明
e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方。
在java中整数默认是int类型,浮点数默认是double类型。
需要记忆以下几点
byte类型的取值范围:
-128 ~ 127
int类型的大概取值范围:
-21亿多 ~ 21亿多
整数类型和小数类型的取值范围大小关系:
double > float > long > int > short > byte
最为常用的数据类型选择:
在定义变量的时候,要根据实际的情况来选择不同类型的变量。
比如:人的年龄,可以选择byte类型。
比如:地球的年龄,可以选择long类型。
如果整数类型中,不太确定范围,那么默认使用int类型。
如果小数类型中,不太确定范围,那么默认使用double类型。
如果要定义字符类型的变量,那么使用char
如果要定义布尔类型的变量,那么使用boolean
4.3 定义8种基本数据类型变量
1 | public class VariableDemo3{ |
注意点
- 如果要定义 一个整数类型的变量,不知道选择哪种数据类型了,默认使用int。
- 如果要定义 一个小数类型的变量,不知道选择哪种数据类型了,默认使用double。
- 如果要定义一个long类型的变量,那么在数据值的后面需要加上L后缀。(大小写都可以,建议大写。)
- 如果要定义一个float类型的变量,那么在数据值的后面需要加上F后缀。(大小写都可以)
5、标识符
业内大多数程序员都在遵守阿里巴巴的命名规则。
5.1 硬性要求:
必须要这么做,否则代码会报错。
- 必须由数字、字母、下划线_、美元符号$组成。
- 数字不能开头
- 不能是关键字
- 区分大小写的。
5.2 软件建议:
如果不这么做,代码不会报错,但是会让代码显得比较low。
5.3 小驼峰命名法
适用于变量名和方法名
如果是一个单词,那么全部小写,比如:name
如果是多个单词,那么从第二个单词开始,首字母大写,比如:firstName、maxAge
(第二个单词)
5.4大驼峰命名法
适用于类名
如果是一个单词,那么首字母大写。比如:Demo、Test。
如果是多个单词,那么每一个单词首字母都需要大写。比如:HelloWorld
不管起什么名字,都要做到见名知意。
方法名小写,类名大写
阿里巴巴命名规范细节:
尽量不要用拼音。但是一些国际通用的拼音可视为英文单词。
正确:alibaba、hangzhou、nanjing
错误:jiage、dazhe
平时在给变量名、方法名、类名起名字的时候,不要使用下划线或美元符号。
错误:_name
正确:name
7. 键盘录入
键盘录入的实际功能Java已经帮我们写好了,不需要我们自己再实现了,而Java写好的功能都放在了Scanner这个类中,所以,我们只要直接使用Scanner这个类就可以了。
使用步骤:
第一步:
导包:其实就是表示先找到Scanner这个类在哪。
第二步:
创建对象:其实就表示申明一下,我准备开始用Scanner这个类了。
第三步:
接收数据:也是真正干活的代码。
代码示例:
1 | //导包,其实就是先找到Scanner这个类在哪 |
7.1 IDEA中层级结构介绍
7.1 结构分类
- project(项目、工程)
- module(模块)
- package(包)
- class(类)
7.2 结构介绍
为了让大家更好的吸收,package这一层级,我们后面再学习,先学习最基础的project、module、class。
project(项目、工程)
淘宝、京东、程序员网站都属于一个个项目,IDEA中就是一个个的Project。
module(模块)
在一个项目中,可以存放多个模块,不同的模块可以存放项目中不同的业务功能代码。在官方网站中,至少包含了以下模块:
- 论坛模块
- 报名、咨询模块
为了更好的管理代码,我们会把代码分别放在两个模块中存放。
package(包)
一个模块中又有很多的业务,以官方网站的论坛模块为例,至少包含了以下不同的业务。
- 发帖
- 评论
为了把这些业务区分的更加清楚,就会用包来管理这些不同的业务。
class(类)
就是真正写代码的地方。
7.3 小结
层级关系
project - module - package - class
包含数量
project中可以创建多个module
module中可以创建多个package
package中可以创建多个class 这些结构的划分,是为了方便管理类文件的。










