1.单词表
与任何编程语言一样,Java 具有具有特殊含义的词。例如,return
或if
或while
。这些词称为关键字(keywords),被Java语言认为是保留的。
您不能将这些词用作变量名、方法名或类名。编译器将始终以严格定义的方式解释它们。54
Java中有这样的词。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
您已经知道其中一些,我们现在将讨论其余部分。
2. 原始类型
你可能还记得,Java 有 8 种基本类型,每一种都有自己的关键字:
byte
short
int
long
char
float
double
boolean
void
如果您有足够的好奇心,您很可能已经尝试将变量命名为 int。当然你没有成功。这正是因为所有原始类型的名称都是保留字。
该void
类型也属于此类。
3.循环和分支
循环和分支也给了我们一个相当长的关键字列表:
if
else
switch
case
default
while
do
for
break
continue
仅 10 个单词就足以让该语言提供多种循环、分支和用于中断循环 ( break
and continue
) 和多个分支 ( switch
) 的控制语句。您已经熟悉所有这些关键字。
4. 例外情况
异常给了我们 5 个关键字:
try
catch
finally
throw
throws
这些都是try-catch-finally
块的一部分。抛出异常的操作符是throw
,throws
关键字支持checked
异常机制。
好消息是您已经熟悉与异常相关的所有关键字,因此您也已经基本熟悉异常的使用。
5.可见性
这里只有三个关键字,你已经很熟悉了。
private
protected
public
public
允许从程序中的任何地方访问方法/变量/类。
private
禁止从程序中的任何地方访问方法/变量/类。只允许在与用修饰符标记的方法相同的类中访问private
。
protected
工作方式与 相同private
,但还允许从继承的类访问方法/变量/类。当您熟悉 OOP 和继承时,您会更清楚这个修饰符的好处。
6. 使用类
此类别中有 11 个关键字:
class
interface
enum
import
package
extends
implements
static
final
abstract
default
他们可以分为4组。
第一组与类的创建有关:class
,interface
和enum
。您已经学习了如何声明类和枚举。该interface
关键字用于声明另一种类似类的类型:接口。
第二组由您已经熟悉的package 和 import关键字组成。package 关键字用于指定类文件中类的包。这样import
我们就可以在编写自己的类时使用外部类的短名称。
和extends
关键字implements
用于继承。您将在 Java Core 任务的最开始查看它们。
最后,最后一组由static
、final
、default
和abstract
修饰符组成。static
您已经对和有所了解final
。关键字abstract
用于使类或方法抽象。在学习 Java Core 任务中的继承时,您将获得更多详细信息。
7. 使用对象和变量
在处理对象、方法和变量时,还使用了六个关键字。
new
instanceof
this
super
return
var
(自 Java 10 起)
运算new
符用于创建新对象——您已经知道了。
运算instanceof
符用于验证变量是否包含对特定类型对象的引用。你已经很熟悉了。
关键字this
用于解决由于实例变量和方法的遮蔽而产生的问题。你也研究过这个。
关键字super
类似于this
,但它用于引用父类的方法和变量。父类也称为超类。
该return
语句用于返回方法的值,也用于终止方法的执行。
最后,var
用于声明一个自动推断其类型的变量。你已经很熟悉了。
8. 多线程
在 Java 语法层面,多线程仅由两个词表示。
synchronized
volatile
我们甚至不会碰他们。获取Java 多线程任务,然后我们将深入研究。
9.杂项
还有另外 4 个特殊关键字:
native
transient
assert
strictfp
native
是一个修饰符,可以写在方法声明之前。这意味着方法代码不是用 Java 编写的,而是用 C++ 编写的,并嵌入到 Java 机器(嗯,或者 DLL)中。正如您可能已经猜到的那样,Java 机器本身也是用 C++ 编写的。就像许多标准库方法一样。
transient
是一个修饰符,可以写在实例变量(类的字段)之前。它要求 Java 机器在序列化类的对象时跳过(或忽略)标记的变量。您可以在 Java 集合任务中了解有关序列化的更多信息。
assert
也从 C++ 来到 Java。在它的帮助下,您可以向您的代码添加额外的检查(例如,检查变量是否为空)。这里重要的是这些检查在编译时启用或禁用。
您可以构建项目进行内部测试,这些检查将被执行(包含在构建中)。或者您可以在编译期间禁用它们以创建将提供给用户的程序版本。
至于strictfp
英特尔处理器的关键字和超高精度,我们为您一一讲述。
10.保留但未使用
还有两个保留但未使用的关键字。
const
goto
这些也是 C++ 语言的遗产,它们存在并被使用。
11.不是关键词
形式上,true
,false
和null
常量不是关键字。也就是说,他们每个人都有自己的特点。您不能命名方法true
或变量false
。编译器不会理解这样的代码,也不会编译它。
GO TO FULL VERSION