关键字简介

  Java一共有54个关键字。

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 @interface    

  大致上可以分为以下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用于将结果返回,退出方法。返回值的类型需与方法返回类型一致。

default

  default除了用于switch流程之外,还用于注解定义,表示默认值。

异常处理

  该类别包含的关键字有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程序文件所属包。

类相关

  该类别包含的关键字有8个,分别是:class、enum、extends、implements、interface、super、this、@interface。

  按性质划分又可以再分为:

  标识:class、enum、interface、@interface

  继承:extends、implements

  对象:super、this

class

  class表明是一个类。

enum

  enum表明是一个枚举类。

extends

  extends用于指定继承的类。一个类只能继承一个类。默认所有类都继承Object类。

implements

  implements用于指定实现的接口。一个类可以实现多个接口。

interface

  interface表明是一个接口。

super

  super指向父类的一个实例。

this

  this指向当前类的一个实例。

@interface

  @interface表明是一个注解类。

类型

  该类别包含的关键字有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。该类别的关键字都没有实际用意。

原文地址:https://www.cnblogs.com/lqkStudy/p/10971996.html