1.关键字
常用的关键词类型如下表所示:
类别 | 关键字 | 说明 |
---|---|---|
数据类型 | int | 表示整数类型 |
float | 表示单精度浮点数 | |
double | 表示双精度浮点数 | |
char | 表示字符类型 | |
boolean | 表示布尔类型(真或假) | |
控制流 | if | 条件语句 |
else | 用于if 条件不成立时的分支 | |
switch | 多条件分支语句 | |
case | switch 语句中的每个条件 | |
default | switch 语句中默认的条件 | |
for | 用于循环的关键字 | |
while | 条件为真时执行的循环 | |
do | 与while 结合使用,至少执行一次循环 | |
访问修饰符 | public | 公共访问修饰符 |
private | 私有访问修饰符 | |
protected | 受保护访问修饰符 | |
default | 没有修饰符时,包内可见 | |
类和对象 | class | 定义一个类 |
interface | 定义接口 | |
extends | 表示类的继承 | |
implements | 表示类实现接口 | |
new | 创建对象 | |
this | 引用当前对象 | |
super | 引用父类的构造器或方法 | |
异常处理 | try | 异常处理的开始块 |
catch | 捕获异常 | |
finally | 无论是否捕获到异常,都会执行的代码块 | |
throw | 显式抛出异常 | |
throws | 声明可能抛出的异常 | |
其他 | static | 定义静态方法或属性 |
final | 定义不可更改的变量或不可重写的方法和类 | |
abstract | 定义抽象类或方法 | |
synchronized | 同步方法或代码块 | |
volatile | 声明变量在多线程环境中的可见性 | |
native | 声明本地方法 | |
transient | 标记不需要序列化的变量 | |
void | 表示没有返回值的方法 | |
enum | 定义枚举类型 | |
assert | 执行断言以进行调试 |
基本数据类型:
- 整型:byte \ short \ int \ long
- 浮点型:float \ double
- 字符型:char
- 布尔型:boolean
引用数据类型:
- 类
- 数组
- 接口
- 枚举
- 注解
- 记录
2.标识符
标识符即:Java中变量、方法、类等要素命名时使用的字符序列。(可以自己命名都是标识符)
2.1 标识符的命名
2.1.1 命名规则
- 组成:可由字母(大小写均可)、数字(0-9)、下划线(_)和美元符号($)构成。
- 首字符:必须以字母、下划线或美元符号开头,不能以数字开头。
- 禁止使用关键字:不可与Java关键字(如 class, public, void, if 等)相同。但可以包含。
- 大小写敏感:Java区分大小写,myVariable 和 MyVariable 被视为不同标识符,但长度无限制。
2.1.2 命名规范
- 1.可读性:标识符应该具有描述性,能够清楚地表示其用途。例如,totalAmount 比 ta 更具可读性。
- 类名、接口名:通常使用驼峰命名法,首字母大写(例如 MyClass)。
- 方法名和变量名:通常使用小写字母开头的驼峰命名法(例如 calculateTotal,count)。
- 常量名:通常使用全大写字母,单词之间用下划线分隔(例如 MAX_VALUE)。
2.2 例子:
2.2.1 合法标识符
- String firstName;
- double totalAmount;
- char $symbol;
- boolean is_valid;
2.2.2 非法标识符
- int 1stValue; // 不能以数字开头
- String class; // 不能使用关键字
- double total-amount; // 不能使用连字符
3.变量
概念:
- 是程序中不可或缺的组成单位,最基本的存储单元
- 构成要素:数据类型、变量名、变量值
- 声明格式:数据类型 变量名 = 变量值
作用:在内存中保存数据。
注意事项:
- 先声明后使用
- 不可脱离其作用域
- 同一个作用域内不可声明同名的变量名
- 变量赋值前,必须满足变量的数据类型且在数据类型有效的范围内变化。
4.基本数据类型详解
4.1整数类型
数据类型 | 大小 | 范围 | 用途 | 示例 |
---|---|---|---|---|
byte | 1 字节 | -128 到 127 | 适合小范围整数 | byte smallNumber = 100; |
short | 2 字节 | -2^15 到 2^15-1 | 适合中等范围整数 | short mediumNumber = 30000; |
int | 4 字节 | -2^31 到 2^15-1 | 最常用的整型 | int number = 200000; |
long | 8 字节 | -2^63 到 2^63-1 | 存储超大范围整数 | long largeNumber = 10000000000L; |
注意事项:
- long类型的变量,赋值要以“l”,“L”作为后缀。
- java中整型变量默认为 int
4.2 浮点类型
float | 4 字节 | ±3.403E+38 | 存储较小浮点数 | float decimalNumber = 5.75f; |
double | 8 字节 | ±1.798E+308 | 存储较大浮点数 | double largeDecimal = 19.99; |
- float:单精度,精确到尾数后7位
- double:双精度,精度为float的两倍
注意事项:
- 定义float变量,赋值以“f”,“F”为后缀
- java中浮点型变量默认为 double
- 二进制浮点数不能精确的表示0.1、0.01等负次幂
- 开发中需要极高精度,使用BigDecimal类替换浮点型。
4.3 字符类型和布尔类型
char | 2 字节 | '\u0000'(0)到 '\uffff'(65,535) | 存储单个字符 | char letter = 'A'; |
boolean | 未定义(可看作 1 位) | 只能取 true 或 false | 用于逻辑运算 | boolean isJavaFun = true; |
char类型:
- 使用单引号(' ')括起来的单个字符。例:char a1= '六'。
- 直接用 Unicode 值来表示字符型常量,例:\u0023表示 '#'。
- java允许使用转义字符 '\',将其后的字符转变为特殊字符型常量。例:char a2 = '\n';
布尔类型:
boolean类型用于判断逻辑条件,用于流程控制语句中:
- if条件控制语句
- while循环控制语句
- for循环控制语句
- do-while循环控制语句
boolean类型数据只有两个取值:true和false。
注意事项:
- 不可以使用0或非0 的整数替代 false和true。
4.4 运算规则
可做运算的基本数据类型不包含 boolean类型。
规则包括:
4.4.1.自动类型提升
1.当容量小的变量和容量大的变量做运算,结果自动转换为容量大的数据类型。(容量大小指 数据的范围大小)
2.运算特征为:byte、short、char -> int-> long-> float-> double(byte、short和char间做运算,结果用int类型)
4.4.2.强制类型转换
- 将取值范围大的类型强制转换为取值范围小的类型。
- 要使用强转符:(),在()内指明要转换的数据类型。
- 强制类型转换中,可能导致精度损失。
4.4.3 基本数据类型与String间的运算
简介:String为引用数据类型,采用""赋值,可包含0个,1个或多个字符。
- String与基本数据类型只能做连接运算,用"+"表连接。
- 结果为String类型。
- String类型无法转换为基本数据类型。
5.运算符
选择其中一部分有意思的做笔记:
条件运算符:格式:(条件表达式)?表达式1 : 表达式2;
- 结果为boolean类型
- 条件表达式结果为true,执行表达式1 ,否则,执行表达式2
- 表达式1 和 表达式2 需要是相同的类型或可兼容的类型