48-keywords.md 4.7 KB
Newer Older
沉默王二's avatar
doc  
沉默王二 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
“二哥,就我之前学过的这些 Java 代码中,有 public、static、void、main 等等,它们应该都是关键字吧?”三妹的脸上泛着甜甜的笑容,我想她在学习 Java 方面已经变得越来越自信了。

“是的,三妹。Java 中的关键字可不少呢!你一下子可能记不了那么多,不过,先保留个印象吧,对以后的学习会很有帮助。”

PS:按照首字母的自然顺序排列。

1.  **abstract:** 用于声明抽象类,以及抽象方法。

2.  **boolean:** 用于将变量声明为布尔值类型,只有 true 和 false 两个值。

3.  **break:** 用于中断循环或 switch 语句。

4.  **byte:** 用于声明一个可以容纳 8 个比特的变量。

5.  **case:** 用于在 switch 语句中标记条件的值。

6.  **catch:** 用于捕获 try 语句中的异常。

7.  **char:** 用于声明一个可以容纳无符号 16 位比特的 [Unicode 字符](https://mp.weixin.qq.com/s/pNQjlXOivIgO3pbYc0GnpA)的变量。

8.  **class:** 用于声明一个类。

9.  **continue:** 用于继续下一个循环,可以在指定条件下跳过其余代码。

10.  **default:** 用于指定 switch 语句中除去 case 条件之外的默认代码块。

11.  **do:** 通常和 while 关键字配合使用,do 后紧跟循环体。

12.  **double:** 用于声明一个可以容纳 64 位浮点数的变量。

13.  **else:** 用于指示 if 语句中的备用分支。

14.  **enum:** 用于定义一组固定的常量(枚举)。

15.  **extends:** 用于指示一个类是从另一个类或接口继承的。

16.  **final:** 用于指示该变量是不可更改的。

17.  **finally:**`try-catch` 配合使用,表示无论是否处理异常,总是执行 finally 块中的代码。

18.  **float:** 用于声明一个可以容纳 32 位浮点数的变量。

19.  **for:** 用于声明一个 for 循环,如果循环次数是固定的,建议使用 for 循环。

20.  **if:** 用于指定条件,如果条件为真,则执行对应代码。

21.  **implements:** 用于实现接口。

22.  **import:** 用于导入对应的类或者接口。

23.  **instanceof:** 用于判断对象是否属于某个类型(class)。

24.  **int:** 用于声明一个可以容纳 32 位带符号的整数变量。

25.  **interface:** 用于声明接口。

26.  **long:** 用于声明一个可以容纳 64 位整数的变量。

27.  **native:** 用于指定一个方法是通过调用本机接口(非 Java)实现的。

28.  **new:** 用于创建一个新的对象。

29.  **null:** 如果一个变量是空的(什么引用也没有指向),就可以将它赋值为 null,和空指针异常息息相关。

30.  **package:** 用于声明类所在的包。

31.  **private:** 一个访问权限修饰符,表示方法或变量只对当前类可见。

32.  **protected:** 一个访问权限修饰符,表示方法或变量对同一包内的类和所有子类可见。

33.  **public:** 一个访问权限修饰符,除了可以声明方法和变量(所有类可见),还可以声明类。`main()` 方法必须声明为 public。

34.  **return:** 用于在代码执行完成后返回(一个值)。

35.  **short:** 用于声明一个可以容纳 16 位整数的变量。

36.  **static:** 表示该变量或方法是静态变量或静态方法。

37.  **strictfp:** 并不常见,通常用于修饰一个方法,确保方法体内的浮点数运算在每个平台上执行的结果相同。

38.  **super:** 可用于调用父类的方法或者字段。

39.  **switch:** 通常用于三个(以上)的条件判断。

40.  **synchronized:** 用于指定多线程代码中的同步方法、变量或者代码块。

41.  **this:** 可用于在方法或构造函数中引用当前对象。

42.  **throw:** 主动抛出异常。

43.  **throws:** 用于声明异常。

44.  **transient:**  修饰的字段不会被序列化。

45.  **try:** 于包裹要捕获异常的代码块。

46.  **void:** 用于指定方法没有返回值。

47.  **volatile:** 保证不同线程对它修饰的变量进行操作时的可见性,即一个线程修改了某个变量的值,新值对其他线程来说是立即可见的。

48.  **while:** 如果循环次数不固定,建议使用 while 循环。


“好了,三妹,关于 Java 中的关键字就先说这 48 个吧,这只是一个大概的介绍,后面还会对一些特殊的关键字单独拎出来详细地讲,比如说重要的 static、final 等。”转动了一下僵硬的脖子后,我对三妹说。

“二哥,你辛苦了,足足 48 个啊,容我好好消化一下。”