Java中有53个关键字,其中有2个保留字
保留的关键字(共2个)
关键字 | 释义 | 作用 |
---|---|---|
const | 常量 | 用于修改字段或局部变量的声明。它指定字段或局部变量的值是常量,不能被修改 |
goto | 转到 | 跳转到指定标签,找到标签后,程序将处理从下一行开始的命令 |
访问修饰符的关键字(共4个)
关键字 | 释义 | 作用 |
---|---|---|
public | 公有的 | 用于本类、同包、子类、其它包 |
protected | 受保护的 | 用于本类、同包、子类 |
default | 默认的 | 用于本类、同包 |
private | 私有的 | 用于本类 |
类、接口、抽象类的关键字(共7个)
关键字 | 释义 | 作用 |
---|---|---|
class | 类 | public class A {} |
interface | 接口 | public interface B {} |
abstract | 抽象的 | public abstract class C {} |
new | 新建 | A a = new A(); |
implements | 实现 | public class A interface B {} |
extends | 继承 | public class A extends C {} |
enum | 枚举 | public enum D {} |
包的关键字(共2个)
关键字 | 释义 | 作用 |
---|---|---|
package | 包 | package leif; |
import | 引入 | import java.io.BufferedReader; |
数据类型的关键字(共12个)
关键字 | 释义 | 作用 |
---|---|---|
byte | 字节型 | 8bit |
short | 短整型 | 16bit |
int | 整型 | 32bit |
long | 长整型 | 64bit |
float | 单精度浮点型 | 32bit |
double | 双精度浮点型 | 64bit |
boolean | 布尔型 | true、false |
char | 字符型 | 16bit |
void | 无返回值 | public void function() {} |
null | 无效的 | 表示类型为引用数据类型的变量的值为空 |
true | 真的 | 表示类型为boolean类型的变量的值为真 |
false | 假的 | 表示类型为boolean类型的变量的值为假 |
流程控制的关键字(共12个)
关键字 | 释义 | 作用 |
---|---|---|
if | 如果 | if() {} |
else | 否则 | else {} |
switch | 开关 | switch语句中可以接受byte、short、int、char、String、枚举 |
case | 案例 | 常与switch连用做等值判断 |
instanceof | 实例 | 测试左边的对象的类型是否等于右边的类,返回boolean类型的数据 |
for | 为了 | for (;;) {} |
while | 在…期间 | while() {} |
do | 做 | do {} while (); |
break | 打破 | 跳出当前循环 |
continue | 继续 | 结束本次循环,开始下一次循环 |
return | 返回 | 结束方法并返回 |
assert | 断言 | assert <boolean表达式> : <错误信息表达式>;若<boolean表达式>为true则程序继续执行,否则程序抛出java.lang.AssertionError,并输入<错误信息表达式>。Java在执行的时候默认是不启动断言检查的(这个时候,所有的断言语句都将被忽略),如果要开启断言检查,则需要通过命令行在运行时用开关-enableassertions或-ea开启 |
方法、变量的关键字(共9个)
关键字 | 释义 | 作用 |
---|---|---|
static | 静态的 | 方法和变量都可以用static修饰,直接使用类名.方法/变量进行调用。只有内部类可以用static修饰,直接使用类名.内部类类名进行调用。static可以独立存在,称为静态代码块,在类声明时加载,且只加载一次 |
final | 不可更改的 | final修饰的类不能被继承。final修饰的方法不能被子类覆写。final修饰的变量赋值后不能被修改,即常量 |
super | 超级的 | 表示父类 |
this | 这个 | 表示当前类 |
synchronized | 同步的 | 进行线程之间的同步 |
volatile | 不稳定的 | 确保将变量的更新操作通知到其他线程,保证了线程之间的可见性。当把变量声明为volatile后,编译器会注意到这个变量是共享的,因此不会将该变量上的操作与其他内存操作一起重排序 |
transient | 临时的 | 如果一个对象的某一个属性不想被序列化保存下来,那么可以使用transient关键字进行说明。transiant和static的字段不会被序列化 |
native | 本地的 | |
strictfp | 精准的 |
异常处理的关键字(共5个)
关键字 | 释义 | 作用 |
---|---|---|
try | 尝试 | 有可能会抛出异常 |
catch | 捕获 | 捕获异常 |
finally | 最后 | 无论是否发生异常,也无论发生的异常是否被捕获,finally语句块中的代码总会被执行 |
throw | 抛出 | 用来抛出一个具体的异常类型:1. 用在方法体内,跟的是异常对象名、2. 只能抛出一个异常对象名、3. 表示抛出异常,由方法体内的语句处理,执行throw表示一定出现了某种异常 |
throws | 抛出 | 用来声明一个方法可能产生的所有异常,不做任何处理而是将异常往上传,谁调用就抛给谁:1. 用在方法声明后面,跟的是异常类名、2. 可以跟多个异常类名,用逗号隔开、3. 表示抛出异常,由该方法的调用者来处理,表示出现异常的一种可能性,并不一定会发生这些异常 |