关键字是电脑语言事先定义的,是特别意义的标识符,又叫保留字。用来表示一种数据类型或程序的结构等,关键字不能用作变量名、类名、方法名或参数。java目前共有50个关键字,其中"const"和"goto"这两个关键字在Java语言中并没有具体含义(未被使用)。

1、关键字总览

基本数据类型(9):boolean、char、byte、short、int、long、float、double、null

变量引用(2):super、this

类、方法、变量修饰符(15):class、abstract(类、方法)、interface、enum、static(程序块、方法、内部类、变量)、final(类、方法、常量)、extends、implements、new、strictfp、synchronized、transient、volatile、native、void

程序结构(11):if、else、for、do、while、switch、case、continue、break、return、instanceof

java包(2):import、package

访问控制(4):private(属性、方法)、default(类、属性、方法)、protected(属性、方法)、public(类、属性、方法)

异常处理(5):try、catch、throw、throws、finally

未使用(2):goto、const

2、关键字基本含义

关键字

含义

abstract

表明类或者成员方法具有抽象属性

assert

用来进行程序调试

boolean

基本数据类型之一,布尔类型

break

提前跳出一个kua

byte

基本数据类型之一,字节类型

case

用在switch语句之中,表示其中的一个分支

catch

用在异常处理中,用来捕捉异常

char

基本数据类型之一,字符类型

class

const

保留关键字,没有具体含义

continue

回到一个块的开始处

default

默认,例如,用在switch语句中,表明一个默认的分支

do

用在do-while循环结构中

double

基本数据类型之一,双精度浮点数类型

else

用在条件语句中,表明当条件不成立时的分支

enum

枚举

extends

表明一个类型是另一个类型的子类型,这里常见的类型有类和接口

final

用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变

finally

用于处理异常情况,用来声明一个基本肯定会被执行到的语句块

float

基本数据类型之一,单精度浮点数类型

for

一种循环结构的引导词

goto

保留关键字,没有具体含义

if

条件语句的引导词

implements

表明一个类实现了给定的接口

import

表明要访问指定的类或包

instanceof

用来测试一个对象是否是指定类型的实例对象

int

基本数据类型之一,整数类型

interface

接口

long

基本数据类型之一,长整数类型

native

用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的

new

用来创建新实例对象

null

用来标识一个不确定的对象

package

private

一种访问控制方式:私用模式

protected

一种访问控制方式:保护模式

public

一种访问控制方式:共用模式

return

从成员方法中返回数据

short

基本数据类型之一,短整数类型

static

表明具有静态属性

strictfp

用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范

super

表明当前对象的父类型的引用或者父类型的构造方法

switch

分支语句结构的引导词

synchronized

表明一段代码需要同步执行

this

指向当前实例对象的引用

throw

抛出一个异常

throws

声明在当前定义的成员方法中所有需要抛出的异常

transient

声明不用序列化的成员域

try

尝试一个可能抛出异常的程序块

void

声明当前成员方法没有返回值

volatile

表明两个或者多个变量必须同步地发生变化

while

用在循环结构中

3、重点介绍

1)访问权限private(私有)、default(包)、protected(包、继承)、public(公有)

注意:class只能用public、default修饰,除了内部类。

2)final、finally、finalize

final用于声明属性(常量),方法和类,分别表示属性不可改变,方法不可覆盖,类不可继承(因此一个类不可以即申明为abstract,又申明为final)。

finally是异常处理语句结构的一部分,表示总是执行(需要自己在方法中添加finally执行的内容)。

finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,供垃圾收集时的其他资源回收,例如关闭文件等。

3)continue、break、return

continue:终止本次循环的执行,即跳过本次循环未执行的代码直接进入下次循环

break:在循环体内则是强行结束整个循环,直接转向循环下面的语句;在switch语句内则表示跳出switch语句体。

return:返回一个值给调用该方法的语句;中断函数执行,返回调用函数处

4)static、final

static是静态修饰关键字,可以修饰变量、程序块以、内部类、方法。static修饰变量时jvm会将将其分配在内存数据段上,所有程序对它的引用都会指向这一个地址而不会重新分配内存,此变量可以通过类名直接访问;当修饰一个程序块的时候(也就是直接将代码写在static{...}中)时候,虚拟机就会优先加载静态块中代码,这主要用于系统初始化;当修饰内部类的时候被称为嵌套内部类(在类博文中介绍);当修饰一个方法时候你就可以直接通过类来调用这个方法而不需要新建对象。

final可以修饰变量、方法、类(2中已有介绍)。

网上有说常量存储在PermGen space中(java常量池存放在哪里),查找可知PermGen space的全称是Permanent Generation space,是指内存的永久保存区域,这块内存主要是被JVM存放Class和Meta信息的,Class在被Loader时就会被放到PermGen space中,它和存放类实例(Instance)的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对PermGen space进行清理,所以如果你的应用中有很多CLASS的话,就很可能出现PermGen space错误,这种错误常见在web服务器对JSP进行pre compile的时候。如果你的WEB APP下都用了大量的第三方jar, 其大小超过了jvm默认的大小(4M)那么就会产生此错误信息了。

又看到这样一篇文章

通过这篇文章java中堆栈(stack)和堆(heap)可以知道PermGen space其实就是我们java中经常说的代码区。

java关键字const_java基础知识(三)java关键字相关推荐

  1. java 基础知识三 java变量

    1.作用域 {} 包围起来的代码称之为代码块,在块中声明的变量只能在块中使用 2.常量 就是固定不变的量,一旦被定义,它的值就不能再被改变. 3.变量 变量必须在程序中被定义(或声明)后才能使用,而且 ...

  2. java 网络爬虫 正则表达式_【干货】Java网络爬虫基础知识

    原标题:[干货]Java网络爬虫基础知识 引言 Java 网络爬虫具有很好的扩展性可伸缩性,其是目前搜索引擎开发的重要组成部分.例如,著名的网络爬虫工具 Nutch 便是采用 Java 开发,该工具以 ...

  3. java的一些基础知识(引用BlogJava 落花飞雪)

     java的一些基础知识(引用BlogJava 落花飞雪) <Practical Java>笔记 1. 声明是什么? String s = "Hello world!" ...

  4. 黑马程序员 一、java 概述与基础知识

    获取更多资源关注Java帮帮IT资源分享网 一.黑马程序员-java 概述与基础知识 1.何为编程? 编程就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果 的过程. 为了使 ...

  5. 【Java】【基础知识】【Java的基本使用】

    [Java][基础知识][Java的基本使用] 基于jdk8 仅个人理解,或有疏漏 基于 java疯狂讲义 第三版和第四版 java核心技术卷一 第十版和第十一版 廖雪峰java课程 一.基本数据与结 ...

  6. 第76节:Java中的基础知识

    第76节:Java中的基础知识 设置环境,安装操作系统,安装备份,就是镜像,jdk配置环境,eclipse下载解压即可使用,下载tomcat 折佣动态代理解决网站的字符集编码问题 使用request. ...

  7. Java核心技术卷一基础知识第10版demo实例

    Java核心技术卷一基础知识第10版demo实例 第三章 JAVA的基本程序设计结构 3.7输入与输出 3.7.1读取输入 3.8控制流程 3.8.3循环 3.10数组 3.10.6多维数组 第四章 ...

  8. java to go 基础知识与区别入土指南

    java to go 基础知识与区别入土指南 文章目录 java to go 基础知识与区别入土指南 @[toc] 基础篇 关于基础类型 关于复合数据类型 关于切片 关于Map 关于sync.map ...

  9. Java 网络编程基础知识

    Java 网络编程基础知识 基础概念 计算机网络的基本概念 ​ 网络:多台计算机使用网络设备互联在一起,计算机之间可以进行通信,这样就组成了一个计算机网络. ​ 网络设备:集线器(HUB),路由器,交 ...

  10. 《Java基础知识》Java变量的声明、初始化和作用域

    <Java基础知识>Java变量的声明.初始化和作用域 一.Java变量的声明 在 Java 程序设计中,每个声明的变量都必须分配一个类型.声明一个变量时,应该先声明变量的类型,随后再声明 ...

最新文章

  1. golangsha1解码_golang中几种加密方式的处理
  2. AutoCompleteTextView的简单用法
  3. SAP-MM-移动类型解析之收货03--退货
  4. 稠密峰值聚类 - Science2014
  5. 快速理解网络通信协议
  6. 压缩图片上传到数据库
  7. leetcode971. 翻转二叉树以匹配先序遍历(dfs)
  8. VoLTE SIP代码意义及流程图解
  9. 计算机键盘快速指南,正确方法:[字母键盘练习方法指南]教您如何快速键入
  10. Python最简单的图片爬虫,只用20行代码爬遍全网
  11. C语言内存空间分布详解
  12. 努比亚修复工具_努比亚Play刷机包(官方刷机完整固件升级包V2)
  13. fixedsys字体 win7_帮您win7系统记事本像Word文档一样更换字体的解决步骤
  14. 跑步戴哪款无线耳机好,适合跑步小白的无线耳机推荐
  15. 思维导图带你看遍花样百出的各类月饼?
  16. apache 开启php fpm,apache php fpm安装方法详解
  17. 低配版点燃我温暖你爱心代码
  18. DRE6-1X/210MG24K4M比例减压阀配套US-DAS1放大器
  19. 第十章 Java数据结构
  20. ESP-12模块系列更换8M flash

热门文章

  1. phP imageMagic抠图,ps抠图技巧汇总
  2. jsp实现简单购物车页面
  3. STEP 7 Micro/WIN 指令库下载网址大全s7-200
  4. c语言程序设计必备单词,C语言编程必背单词版.docx
  5. app一键签名工具 --- Android Sign Kit v1.0免费版
  6. webpack-开发服务器-配置
  7. 在macOS下制作黑苹果镜像
  8. CSDN 原力 -- beta 测试中
  9. 【STM32】STM32驱动 LCD12864程序代码(串行方式)
  10. 【Python - wxpython】- 卫星通信系统链路计算软件