常见知识点整理一
java基础语法,常见知识点整理一
常量:
程序运行期间,内容不可以改变的量。
字符串常量,字符常量,整型常量,浮点数常量,布尔常量,空常量
易错点:字符常量由单引号表示,里面有且只有一个字符。空常量不能直接输出。
基本数据类型:
- 整数型 byte short int long
- 浮点型 float double
- 字符型 char
- 布尔型 boolean
注意点:数据范围和字节数不一定相关;字符串不是基本数据类型,是引用类型;浮点型可能只是一个近似值,不是精确值;浮点数默认类型为double,若用float后面加F,整形数默认为int,若用long后面加L。
引用数据类型:
字符串 数组 类 接口 Lambda
变量:
- 局部变量
- 类变量
- 成员变量
数据类型转换:
当数据类型不一样时,将会发生数据类型转换。
-
自动类型转换(隐式)
特点:代码不需要进行特殊处理,自动完成
规则:数据范围从小到大
-
强制类型转换(显式)
特点:代码需要进行特殊的格式处理,不能自动完成
格式:范围小的类型 范围小的变量名 = (范围小的类型)原本范围大的数据
整数默认为int型,浮点数默认为double型。
隐式转换:
long num1 = 100 //100默认为int类型
double num2 = 3.14F;
float num3 = 10L; float比long的范围大
显示转换
int num1 = (int)100L
int num2 = (int)20000000000L; 强制类型转换一般不推荐使用,因为可能会出现精度损失,数据溢出
byte/short/char在进行数学运算的时候,类型会转换为int类型,在进行计算
byte num1 = 30;
byte num2 = 20;
int result = num1 + num2; //byte+byte-->int+int-->int
编译优化中的类型转换
byte num1 = 35
// 35是int类型,数值没有超过byte类型的范围,在编译器编译时会自动在35前面加上(byte)。
byte num2 = 128;
//范围超过了,则会报错。
char ch = 56
//这里56会被编译器转换成字符类型
short a = 1,b=2;
short result = a + b;//错误
short result = 5 + 3;//正确
short result = 5 + a;//错误
在变量赋值时,如果右侧的表达式全是常量,那么编译器直接将若干常量表达式计算得到结果,称为编译器的常量优化。
Java关键字
类别 | 关键字 | 说明 |
---|---|---|
private | 私有的 | |
访问控制 | protected | 受保护的 |
public | 公共的 | |
default | 默认 |
类别 | 关键字 | 说明 |
---|---|---|
abstract | 声明抽象 | |
class | 类 | |
extends | 扩充,继承 | |
final | 最终值,不可改变的 | |
implements | 实现(接口) | |
interface | 接口 | |
类,方法和变量修饰符 | native | 本地,原生方法(非 Java 实现) |
new | 新,创建 | |
static | 静态 | |
strictfp | 严格,精准 | |
synchronized | 线程,同步 | |
transient | 短暂 | |
volatile | 易失 |
类别 | 关键字 | 说明 |
---|---|---|
break | 跳出循环 | |
case | 定义一个值以供 switch 选择 | |
continue | 继续 | |
default | 默认 | |
do | 运行 | |
else | 否则 | |
程序控制语句 | for | 循环 |
if | 如果 | |
instanceof | 实例 | |
return | 返回 | |
switch | 根据值选择执行 | |
while | 循环 |
错误处理 | |
---|---|
assert | 断言表达式是否为真 |
catch | 捕捉异常 |
finally | 有没有异常都执行 |
throw | 抛出一个异常对象 |
throws | 声明一个异常可能被抛出 |
try | 捕获异常 |
基本类型 | |
---|---|
boolean | 布尔型 |
byte | 字节型 |
char | 字符型 |
double | 双精度浮点 |
float | 单精度浮点 |
int | 整型 |
long | 长整型 |
short | 短整型 |
变量引用 | |
---|---|
super | 父类,超类 |
this | 本类 |
void | 无返回值 |
保留关键字 | |
---|---|
goto | 是关键字,但不能使用 |
const | 是关键字,但不能使用 |
null | 空 |