关键字 & 保留字

关键字(或者保留字)是对编译器有特殊意义的固定单词,不能在程序中做其他目的使用。

关键字具有专门的意义和用途,和自定义的标识符不同,不能当作一般的标识符来使用。例如, class 就是一个关键字,它用来声明一个类。public 也是关键字,它用来表示公共类。另外,static 和 void 也是关键字。

关键字(keyword)

Java 的关键字对 Java 编译器有特殊的意义,它们用来表示一种数据类型,或者表示程序的结构等。

关键字 描述
import 表明引入的指定类或包
package 声明包
class 声明类
extends 声明一个类型是另一个类型的子类型,这里常见的类型有类和接口,继承用
implements 表明一个类实现了给定的接口
interface 接口
abstract 表明类或者成员方法具有抽象属性
final 用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变
native 用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的
private 一种访问控制方式:私用模式
protected 一种访问控制方式:保护模式
public 一种访问控制方式:共用模式
static 表明具有静态属性
synchronized 表明一段代码需要同步执行
transient 声明不用序列化的成员域
volatile 表明两个或者多个变量必须同步地发生变化
new 用来创建新实例对象
instanceof 用来测试一个对象是否是指定类型的实例对象
do 用在do-while循环结构中
while 用在循环结构中
for 一种循环结构的引导词
continue 回到一个块的开始处
break 提前跳出一个块
return 从成员方法中返回数据
if 条件语句的引导词
else 用在条件语句中,表明当条件不成立时的分支
switch 分支语句结构的引导词
case 用在switch语句之中,表示其中的一个分支
default 默认,例如,用在switch语句中,表明一个默认的分支
try 尝试一个可能抛出异常的程序块
catch 用在异常处理中,用来捕捉异常
finally 表示最终执行块
throw 抛出一个异常
throws 声明在当前定义的成员方法中所有需要抛出的异常
boolean 基本数据类型之一,布尔类型
byte 基本数据类型之一,字节类型
char 基本数据类型之一,字符类型
double 基本数据类型之一,双精度浮点数类型
float 基本数据类型之一,单精度浮点数类型
int 基本数据类型之一,整数类型
long 基本数据类型之一,长整数类型
short 基本数据类型之一,短整数类型
null 空
true 正确
false 错误
super 表明当前对象的父类型的引用或者父类型的构造方法
this 指向当前实例对象的引用
void 声明当前成员方法没有返回值
strictfp 用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范
assert 断言

保留字(reserved word)

保留字是为 Java 预留的关键字,在Java现有版本中没有特殊含义,以后版本可能会作为有特殊含义的词,或者该词虽然在Java中没有特殊含义,以后版本也不打算使用,但在其它语言中有特殊含义,不宜在Java中定义为变量名称等,因为容易混淆。

保留字 描述
goto 保留关键字,没有具体含义
const 保留关键字,没有具体含义
byValue 保留关键字,没有具体含义
cast 保留关键字,没有具体含义
future 保留关键字,没有具体含义
generic 保留关键字,没有具体含义
inner 保留关键字,没有具体含义
operator 保留关键字,没有具体含义
outer 可做标签
rest 保留关键字,没有具体含义
var 保留关键字,没有具体含义
false 错误
true 正确
null 空

关键字分组

关键字一律用小写字母标识,按其用途划分为如下几组。

  1. 用于数据类型:关键字有 boolean、byte、char、 double、 short、float、int、long、new、void、instanceof。
  2. 用于语句:关键字有switch、case、break、 default 、try、 catch、 finally、throw、do、 while、 for、continue、return、 if、else、 this、 super。
  3. 用于修饰:关键字有 abstract、final、native、private、 protected、public、static、synchronized、transient、 volatile。
  4. 用于方法、类、接口、包和异常:关键字有 class、 extends、 implements、interface、 package、import、throws。
  5. 还有cast、 future、 generic、innerr、 operator、 outer、rest、var、goto、const等都是 Java 保留的关键字,也叫保留字。
  6. 另外,Java还有3个特殊的关键字:true、false、null。严格意义上说它们不是关键字,而是用于定义数据类型值的字面值。

2020重新出发,JAVA入门,关键字&保留字的更多相关文章

  1. Java标识符,关键字,保留字三者区分(主要是从官网摘抄)

    区分 标识符(Identifiers) An identifier is an unlimited-length sequence of Java letters and Java digits, t ...

  2. Java入门(四):运算符优先级、关键字与保留字

    上次介绍了Java的运算符,今天来介绍下运算符的优先级,以及Java的关键字.保留字. 一.运算符优先级 序号 运算符 名称 目数 结合性 说明 1 [ ] 方括号 从左向右 优先级最高 . 点号 双 ...

  3. 2020 重新出发,JAVA 学习计划

    ------ @[toc]# 前言 我呢已经工作七年了,一直没有换工作,因为我这个人没什么太大的野心,安安稳稳的生活就挺好,目前的公司虽然福利一般,但是工作稳定,环境也都很熟悉了. 但是今年,到目前为 ...

  4. java的关键字与保留字

    1,Java 关键字列表 (依字母排序 共50组): abstract, assert, boolean, break, byte, case, catch, char, class, const(保 ...

  5. java关键字 保留字

    Java 关键字和保留字 Java 关键字列表 (依字母排序 共51组): abstract, assert,boolean, break, byte, case, catch, char, clas ...

  6. 【Java】关键字 和 保留字

    Java的关键字[Keyword]和 保留字[Reserved word] 官方描述: https://docs.oracle.com/javase/tutorial/java/nutsandbolt ...

  7. Java入门(二)——果然断更的都是要受惩罚的。。。

    断更了一个多月,阅读量立马从100+跌落至10-,虽说不是很看重这个,毕竟只是当这个是自己的学习笔记,但有人看,有人评论,有人认同和批评的感觉还是很巴适的,尤其以前有过却又被剥夺的,惨兮兮的. 好好写 ...

  8. Java入门学习知识点汇总

    Java入门重要知识点在这里总结一下,以方便日后复习,这部分内容主要有:变量和常量,常用的运算符,流程控制语句,数组,方法这些内容 一.变量和常量 1.Java关键字 先贴张图: 所有关键字区分大小写 ...

  9. Java入门(三):变量和运算符

    上次谈到了Java的基本数据类型,今天接着聊Java的变量.运算符. 一.变量 1.变量的分类 变量分为成员变量.局部变量和常量,其中成员变量又分为实例变量.类变量. 2.变量的定义 语法:变量类型( ...

随机推荐

  1. hihoCoder 1040 矩阵判断 最详细的解题报告

    题目来源:矩阵判断 解题思路: 1.判断矩阵的4个点是否相连,一共输入8个点,只要判断是否4个点是否都经过2遍: 2.判断矩阵中任意一条边与其他边之间要么平行,要么垂直.设A(x1,y1),B(x2, ...

  2. L-BFGS算法详解(逻辑回归的默认优化算法)

    python信用评分卡建模(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_ca ...

  3. educoder SML程序设计题线下编译环境搭建

    背景 最近<串并行数据结构与算法设计>的老师在educoder上布置了一些SML程序设计题,虽然网站上有在线编译功能,但还是在线下编译调试方便,特记录编译环境过程如下(我用的GVIM,但N ...

  4. Unity3D Demo项目开发记录

    前言 经过一段时间的学习与实际开发,unity3D也勉强算是强行入门了,正所谓好记性不如烂笔头,更何况本人并非专业从事unity3D开发,会一点C#但也并不熟悉,为了避免后期遗忘,因此特意整理了一个D ...

  5. OSCP Learning Notes - Post Exploitation(4)

    Pivoting 1. Edit the virtual network settings of the Vmware. 2. Set the Network Adapter(s) of Kali L ...

  6. Python Ethical Hacking - VULNERABILITY SCANNER(3)

    Polish the Python code using sending requests in a session Class Scanner. #!/usr/bin/env python impo ...

  7. kubernetes系列(十七) - 通过helm安装dashboard详细教程

    1. 前提条件 2. 配置https证书为secret 3. dashboard安装 3.1 helm拉取dashboard的chart 3.2 配置dashboard的chart包配置 3.3 he ...

  8. python 列表的创建以及基本操作

    <python编程从入门到实践> 第三章 列表简介 用"[]"来建立列表,例如:letter = [a,b,c]; 用"[]"来提取列表元素,例如l ...

  9. 013.Nginx动静分离

    一 动静分离概述 1.1 动静分离介绍 为了提高网站的响应速度,减轻程序服务器(Tomcat,Jboss等)的负载,对于静态资源,如图片.js.css等文件,可以在反向代理服务器中进行缓存,这样浏览器 ...

  10. ref和动态组件

    ref--------指引 另一种获取表单值的方法 是Vue环境中一个内置的属性.它可以使用this.$refs可以快速拿到DOM对象.