当前位置:文档之家› java关键字和注解

java关键字和注解

java关键字详解
abstract:修饰符号,声明抽象方法和抽象类。

声明方法时表示该方法只有特征签名,没有具体实现。

而是把具体实现留给继承该类的子类,并且抽象类不能直接用new来
实例化对象即使有公共的构造函数
assert:断言,用于定位程序错误。

它是一种程序的调试,测试方式
boolean:布尔数据类型,属于基本数据类型,默认情况下boolean的值为false。

break:流程控制,用于终止switch或循环语句块。

Break终止单循环语句,加上标签后就是终止有标签标记的外层循环。

byte:字节型(8位整型),属于基本数据类型。

case:用于switch语句中标记一个判断分支。

和switch的表达式的值进行比较,在相等的情况下执行case语句
catch:标记try异常处理语句的处理代码分支。

Try与catch一起用来捕获程序异常char:16位的Unicode编码字符型,属于基本数据类型。

class:用于声明java类。

continue:流程控制,用于跳过本次循环中未完成部分而继续下一次循环。

和break类似,可以在continue后加标签来跳过外层循环的本次运行
default:用于switch语句中标记默认的分支。

即在所有case语句都不执行是执行该语句do:标记do/while循环的开始,用来声明一个循环,这个循环的结束条件可以通过while 关键字设置
double:双精度浮点数,属于基本数据类型。

else:标记if分支的否定分支。

即在if条件不满足的情况下执行该语句
extends:用于标记java类间的继承关系。

final:表明终态性,用于声明不允许被继承的类和不允许被重写的方法和常量。

它只能定义一个实体一次,以后不能改变它或继承它。

也就是说,一个final修饰的类
不能被子类化,一个final修饰的方法不能被重写,一个final修饰的变量不能改
变其初始值。

finally:标记try异常处理语句的无条件执行代码分支。

用来执行一段代码不管在前面定义的try语句中是否有异常或运行时错误发生。

float:单精度浮点型,属于基本数据类型。

for:标记for循环。

if:标记if分支语句。

implements:表明java类接口间的实现关系,它在类的声明中是可选的,用来指明当前类实现的接口。

import:导入软件包。

在源文件的开始部分指明后面将要引用的一个类或整个包,这样就不必在使用的时候加上包的名字
instanceof:检测某个对象是否是某个特定类的实例。

即用来测试第一个参数的运行时类型是否和第二个参数兼容
int:基本数据类型-32位整型。

interface:声明java接口类型。

long:基本数据类型-长整型。

native:用于声明本地方法-无方法体,通过调用底层代码来实现其功能。

它用来声明本
机方法(native method)的。

一旦声明,这些本机方法可以在Java程序中被调用,
就像调用其他Java方法一样。

native method用C/C++语言实现,并且被编译成
DLL,这些函数的实现体在DLL中,在Java中本机方法体只是一个分号。

例如:
向操作系统请求机器的CPU编号方法,如下:
public native int getCPUID();
native method以可以被重载或者覆盖,也可以是final,static,synchronized,p ublic,protected,private的。

但是本机方法不能声明为abstract或者strictfp类型。

new:用于创建新对象。

即实例化一个对象。

null:标记一个空的引用。

package:用于声明软件包。

private:访问控制修饰符,限制某成员只能在本类中直接被访问。

用在方法或变量的声中。

它表示这个方法或变量只能被这个类的其它元素所访问
protected:访问控制修饰符,限制某成员只能在本类,同一包及子类中被直接访问。

在方法和变量的声明中使用,它表示这个方法或变量只能被同一个类中的,子类中的或
者同一个包中的类中的元素所访问。

public:访问控制修饰符,标记某成员可以在任何场合可以被直接访问。

在方法和变量的声明中使用,它表示这个方法或变量能够被其它类中的元素访问。

return:如果一个方法不为void,即有返回值的时候,用此关键字终止方法的运行并返回处理结果给调用环境。

简单的说就是用来结束一个方法的执行。

它后面可以跟一
个方法声明中要求的值。

short:基本数据类型,16位的短整型。

static:修饰符,用于声明类成员――由整个类共有而不是该类每个实例专属。

即在访问权限允许的情况下,可以不用new该类的对象,直接可以用类名加”.”调用。

strictfp:表明浮点数时采用严格的规则――使用扩展的尾数以及避免精度损失但可以避免产生数据溢出。

super:在子类表明父类成员或在构造方法中调用父类的构造方法。

swtich:表明switch分支语句。

synchronized:同步处理标记,用于多线程共享数据时,在一个方法或语句块的范围锁定一个对象。

this:标记方法的当前对象,或在构造方法中调用同一个类的其他重载构造方法。

用来代表它出现的类的一个实例。

this可以用来访问类变量和类方法。

throw:显示抛出异常。

它允许用户抛出一个exception对象或者任何实现throwable的对象throws:在方法声明中表明其可能抛出的异常。

它用在方法的声明中来说明哪些异常这个方法是不处理的,而是提交到程序的更高一层。

transient:用于标记不允许被序列化处理的成员对象。

用来表示一个域不是该对象串行化的一部分。

当一个对象被串行化的时候,transient型变量的值不包括在串行化的表
示中,然而非transient型的变量是被包括进去的。

try:标记一段可能产生异常的代码片断。

用来定义一个可能抛出异常语句块。

如果一个异常被抛出,一个可选的catch语句块会处理try语句块中抛出的异常。

同时,
一个finally语句块会被执行,无论一个异常是否被抛出。

void:标记一个方法没有返回值。

"void"也可以用来表示一句没有任何功能的语句。

volatile:标记一个成员变量进行强迫性同步处理,确保多线程中共享数据的一致性。

既它用在变量的声明中表示这个变量是被同时运行的几个线程异步修改的。

while:标记whlie型循环。

用来定义一段反复执行的循环语句。

循环的退出条件是while 语句的一部分。

goto:只是作为关键字保留,未使用。

const:只是作为关键字保留,未使用
附:
1,True和false作为boolean的面值,虽然它们不是关键字,但也不能做为标识附使用。

2,java中的关键字都为小写。

3,基本数据类型可以用大写,区别在于,小写在定义一个变量时必须要给个初始值,其不支持空值。

大写的则相反,它支持空值。

例如:
float f1=null;程序运行时将报错。

Float f1=null;程序运行时不出错。

4,static定义的变量会优先于任何其它非static变量,不论其出现的顺序如何
Annotation注解
Annotation注解在Java中有着很广泛的,他是做为一种标识为javac所识别,。

每一个注解都对应这一个Java类在ng包中有三个注解分别是
Deprecated
SuppressWarning
Override
在使用注解前必须要在注解类前面加上@每增加一个注解就意味着产生了一个注解对象。

@Deprecated过时的
@SuppressWarning抑制警告
@Override覆盖
每增加一个注解就意味着产生了一个注解对象。

注解就是一个标识,编译器通过标识来输出不同的编译结果。

@Deprecated过时API注解
我们在用到JDK提供的API的时候,在编译中遇到这样的提示提示用到过时的API,那么这个API就被这个@Deprecated注解所标识,在javac进行编译的时候发现了注解便做出相应的提示。

@SuppressWarning("deprecation")从字面意思上就是抑制过时API的警告,这个可以放在调用过时的API的方法外部或者调用方法之前,那么在编译的时候javac遇到这个标识即使知道API过时那么也不会输出过时API的提示
@Override这个是覆盖注解,也就是在继承中进行覆盖父类的某个方法的时候可以加上这个注解,加上这个注解之后如果我们的覆盖方法出错了Eclipse会提示我们错误。

相关主题