什么是Java的关键字
关键字是电脑语言里事先定义的,有特别意义的标识符,有时又叫保留字,还有特别意义的变量。
关键字分别是什么以及作用
关键字 | 意义 | 备注 |
---|---|---|
访问修饰符关键字 | ||
public | 公有的 | 可以被所有其他类所访问。 |
protected | 受保护的 | 自身,子类及同一个包中类可以访问 |
private | 私有的 | 只能被自己访问和修改。 |
default | 默认的 | 同一包中的类可以访问,声明时没有加修饰符,认为是friendly。 |
定义类、接口、抽象类和实现接口、继承类的关键字、实例化对象 | ||
class | 类 | public class A(){} 花括号里有已实现方法体,类名需要与文件名相同 |
abstract | 声明抽象类 | public abstract class C(){} 介于类与接口中间,可以有也可以没有已经实现的方法体 |
interface | 接口 | public interface B(){} 花括号里有方法体,但没有实现,方法体句子后面是英文分号“;”结尾 |
enum | 枚举,列举型别 | 代表一组常用常量,可用来代表一类相同类型的常量值如: public enum SexEnum { male, female;} |
implements | 实现 | 用于类或接口实现接口public class A interface B(){} |
extends | 继承 | 用于类继承类 public class A extends D(){} |
new | 创建新对象 | A a=new A(); A表示一个类 |
包的关键字 | ||
import | 引入包的关键字 | 当使用某个包的一些类时,仅需类名 然后使用ctrl+shift+o或者选定类名(类或属性或方法)按住ctrl+单击 即可自动插入类所在的包。如:JFrame 快捷键之后自动加入import javax.swing.JFrame; |
package | 定义包的关键字 | 将所有有关的类放在一个包类以便查找修改等。如:package javake.flycat.draw002; |
数据类型的关键字 | 字节数 位数 最大值 最小值 | |
byte | 字节型 | 1byte / 8bit / 2^7 - 1 / -2^7 |
char | 字符型 | 2byte / 16bit / 2^16 - 1 / 0 |
short | 短整型 | 2byte / 16bit / 2^15 - 1 / -2^15 |
int | 整型 | 4byte / 32bit / 2^31 - 1 / -2^31 |
float | 浮点型 | 4byte / 32bit / 3.4028235E38 / 1.4E - 45 |
long | 长整型 | 8byte / 64bit / 2^63 - 1 / -2^63 |
double | 双精度 | 8byte / 64bit / 1.7976931348623157E308 / 4.9E - 324 |
boolean | 布尔型 | true/false |
true | 真 | 可以被所有其他类所访问。 |
false | 假 | 可以被所有其他类所访问。 |
void | 无返回 | public void A(){} 其他需要返回的经常与return连用 |
null | 空值 | 可以被所有其他类所访问。 |
条件循环(流程控制) | ||
if | 如果 | if(){} 如果小括号里面怎么怎么样 花括号就怎么怎么样(如果只有一条可以省略{} |
else | 否则,或者 | 常与if连用,用法相同 |
while | 当什么的时候 | while 怎么样就do什么 while(){} |
for | 满足三个条件时 | for ( ; ; ){} |
switch | 开关 | switch(表达式){case 常量表达式1:语句1;….case 常量表达式2:语句2;default:语句;}default就是如果没有符合的case就执行它,default并不是必须的.case后的语句可以不用大括号.switch语句的判断条件可以接受int,byte,char,short,不能接受其他类型. |
case | 返回开关里的结果 | 与switch连用 |
do | 运行 | 长与while连用 |
break | 跳出循环 | 停止所有循环 |
continue | 继续 | 中断本次循环,并开始下一次。 |
return | 返回 | return 一个返回值类型 |
instanceof | 实例 | 一个二元操作符,和==,>,<是同一类的。测试它左边的对象是否是它右边的类的实例,返回boolean类型的数据 |
修饰方法、类、属性和变量 | ||
static | 静态的 | 属性和方法都可以用static修饰,直接使用类名.属性和方法名。 只有内部类可以使用static关键字修饰,调用直接使用类名.内部类类名进行调用。 static可以独立存在。静态块 |
final | 最终的不可被改变的 | 方法和类都可以用final来修饰 final修饰的类是不能被继承的 final修饰的方法是不能被子类重写。常量的定义:final修饰的属性就是常量。 |
super | 调用父类的方法 | 常见public void paint(Graphics g){super.paint(g); ··· } |
this | 当前类的父类的对象 | 调用当前类中的方法(表示调用这个方法的对象)this.addActionListener(al):等等 |
native | 本地 | native关键字可以应用于方法,以指示该方法是用Java以外的语言实现的。 native String getProcessorType(); |
strictfp | 严格,精准 | 用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范 |
synchronized | 线程,同步 | 表明一段代码需要同步执行 |
transient | 短暂 | 声明不用序列化的成员域 |
volatile | 易失 | 表明两个或者多个变量必须同步地发生变化 |
错误处理 | ||
try | 捕获异常 | 1.try+catch 程序的流程是:运行到try块中,如果有异常抛出,则转到catch块去处理。然后执行catch块后面的语句 2.try+catch+finally 程序的流程是:运行到try块中,如果有异常抛出,则转到catch块,catch块执行完毕后,执行finally块的代码,再执行finally块后面的代码。如果没有异常抛出,执行完try块,也要去执行finally块的代码。然后执行finally块后面的语句 3.try+finally 程序的流程是:运行到try块中,如果有异常抛出的话,程序转向执行finally块的代码。那末finally块后面的代码还会被执行吗?不会!因为你没有处理异常,所以遇到异常后,执行完finally后,方法就已抛出异常的方式退出了。这种方式中要注意的是,由于你没有捕获异常,所以要在方法后面声明抛出异常 |
catch | 处理异常 | |
finally | 有没有异常都执行 | |
throw | 抛出一个异常对象 | 一些可以导致程序出问题的因素,比如书写错误,逻辑错误或者是api的应用错误等等. 为了防止程序的崩溃就要预先检测这些因素,所以java 使用了异常这个机制.在java中异常是靠 “抛出” 也就是英语的”throw” 来使用的,意思是如果发现到什么异常的时候就把错误信息 “抛出” |
throws | 声明一个异常可能被抛出 | 把异常交给他的上级管理,自己不进行异常处理 |
assert | 断言 | 用来进行程序调试 |
const | 常量,常数 | 用于修改字段或局部变量的声明。它指定字段或局部变量的值是常数,不能被修改 |
goto | 转到 | 指定跳转到标签,找到标签后,程序将处理从下一行开始的命令。 |