关键字简介
Posted lqkstudy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关键字简介相关的知识,希望对你有一定的参考价值。
Java一共有53个关键字。
abstract | assert | boolean | break | byte | case | catch | char |
class | const | continue | default | do | double | else | enum |
extends | false | final | finally | float | for | goto | if |
implements | import | instanceof | int | interface | long | native | new |
null | package | private | protected | public | return | short | static |
strictfp | super | switch | synchronized | this | throw | throws | transient |
true | try | void | volatile | while |
大致上可以分为以下9种类别:
修饰符
该类别包含的关键字有11个,分别是:abstract、final、native、private、protected、public、static、strictfp、synchronized、transient、volatile。
按修饰符修饰的对象划分,又可以再分为:
类修饰符(4):abstract、final、public、strictfp
接口修饰符(3):abstract、public、strictfp
方法修饰符(9):abstract、final、native、private、protected、public、static、strictfp、synchronized
成员变量修饰符(7):final、private、protected、public、static、transient、volatile
局部变量修饰符(1):final
abstract
abstract可以修饰类、接口或方法。
若用abstract修饰类,表明该类是一个抽象类。abstract不能修饰最终类。
若用abstract修饰接口,表明该类是一个抽象接口。接口本身就是抽象的,所以基本上不用abstract修饰接口。
若用abstract修饰方法,表明该方法是一个抽象方法,没有方法体。abstract不能修饰最终方法和精确浮点方法。
final
final可以修饰类、方法、成员变量或局部变量。
若用final修饰类,表明该类是一个最终类,不能被继承。final不能修饰抽象类。
若用final修饰方法,表明该方法是一个最终方法,不能被重写。final不能修饰抽象方法。
若用final修饰成员变量或局部变量,表明该变量是一个最终变量(常量),只能在声明时赋初值,之后不能重新赋值。
native
native可以修饰方法。
若用native修饰方法,表明该方法没有方法体,由本地其他语言实现。
private
private可以修饰方法或成员变量。private用于访问控制,属于不可见访问控制修饰符,表明修饰对象只能在当前类中被使用。
若用private修饰方法,表明该方法是一个私有方法。private不能修饰抽象方法。
若用private修饰成员变量,表明该变量是一个私有变量。
protected
protected可以修饰方法或成员变量。protected用于访问控制,属于可见访问控制修饰符,表明修饰对象只能在当前类及其子类中被使用。
若用protected修饰方法,表明该方法是一个保护方法。
若用protected修饰成员变量,表明该变量是一个保护变量。
public
public可以修饰类、接口、方法或成员变量。public用于访问控制,属于可见访问控制修饰符,表明修饰对象可以在任何类中被使用。
若用public修饰类,表明该类是一个公共类。一个Java程序文件只能有一个公共类或公共接口。
若用public修饰接口,表明该类是一个公共接口。一个Java程序文件只能有一个公共类或公共接口。
若用public修饰方法,表明该方法是一个公共方法。
若用public修饰成员变量,表明该变量是一个公共变量。
static
static可以修饰方法或成员变量。static修饰的对象能被类的所有实例共享。
若用static修饰方法,表明该方法是一个类方法。
若用static修饰成员变量,表明该变量是一个类变量。
strictfp
strictfp可以修饰类、接口或方法。strictfp修饰的对象中的浮点型变量计算将会严格遵循IEEE 754算数规范。
若用strictfp修饰类,表明该类是一个精确浮点类。
若用strictfp修饰接口,表明该方法是一个精确浮点接口。
若用strictfp修饰方法,表明该变量是一个精确浮点方法。
synchronized
synchronized可以修饰方法,用于控制多个并发线程对共享数据的访问。
若用synchronized修饰方法,表明该方法一次只能由一个线程执行。
transient
transient可以修饰成员变量。
若用transient修饰成员变量,表明该变量不是实例的永久状态。实例序列化时将不会处理transient修饰的成员变量。
volatile
volatile可以修饰成员变量。
若用volatile修饰成员变量,表明该变量可以被多个并行线程异步地修改。
程序控制
该类别包含的关键字有11个,分别是:break、case、continue、default、do、else、for、if、return、switch、while
按流程类别划分又可以再分为:
选择流程(5):case、default、else、if、switch
循环流程(5):break、continue、do、for、while
方法返回(1):return
选择流程
case、default、switch搭配使用,构成switch选择流程。
else、if搭配使用,构成if-else选择流程。
if也可以单独使用,构成if选择流程。
循环流程
do、while搭配使用,构成do-while循环流程。
while也可以单独使用,构成while循环流程。
for单独使用,构成for循环流程。
break、continue用于退出循环:break直接结束整个循环流程;continue结束当前循环,进入下一趟循环。
方法返回
return用于将结果返回,退出方法。返回值的类型需与方法返回类型一致。
异常处理
该类别包含的关键字有5个,分别是:catch、finally、throw、throws、try。
catch、finally、try搭配使用,构成try-catch-finally异常处理。
catch、finally也可以与try搭配使用,分别构成try-catch异常处理和try-finally异常处理。
throw用于在方法体中抛出可能出现的异常。
throws用于在方法声明时指定抛出可能出现的异常。
Java程序文件相关
该类别包含的关键字有2个,分别是:import、package。
import用于指定Java程序文件中需要导入的类。
package用于指定Java程序文件所属包。
类相关
该类别包含的关键字有7个,分别是:class、enum、extends、implements、interface、super、this。
按性质划分又可以再分为:
标识:class、enum、interface
继承:extends、implements
对象:super、this
class
class表明是一个类。
enum
enum表明是一个枚举类。
extends
extends用于指定继承的类。一个类只能继承一个类。默认所有类都继承Object类。
implements
implements用于指定实现的接口。一个类可以实现多个接口。
interface
interface表明是一个接口。
super
super指向父类的一个实例。
this
this指向当前类的一个实例。
类型
该类别包含的关键字有9个,分别是:boolean、byte、char、double、float、int、long、short、void。
boolean、byte、char、double、float、int、long、short是8个基本数据类型。
void一般用于方法声明返回类型,表示无需返回任何结果。
运算符
该类别包含的关键字有3个,分别是:assert、instanceof、new。
assert用于断言。如果表达式结果为false则抛出AssertError异常。
instanceof用于判断类型,返回布尔值。
new用于创建引用类型的实例。
值
该类别包含的关键字有3个,分别是:false、null、true。
false和true是布尔型的两个取值。
null指向一个无效对象。通常声明一个引用类型的变量,其默认值就是null。
保留字
该类别包含的关键字有2个,分别是:const、goto。该类别的关键字都没有实际用意。
以上是关于关键字简介的主要内容,如果未能解决你的问题,请参考以下文章
FlutterFuture 异步编程 ( 简介 | then 方法 | 异常捕获 | asyncawait 关键字 | whenComplete 方法 | timeout 方法 )
深究Python中的asyncio库-asyncio简介与关键字