您的位置:首页 > 编程语言 > Java开发

Java关键字

2016-08-28 20:46 197 查看
既然是说关键字,先来看看Java都有哪些关键字?

1、基本的数据类型:

boolean、byte、char、double、float、int、long、short
2、类和方法相关

package、import、class、interface、abstract、final、private、protected、public、static、new、this、void
3、流程控制:

if、else、switch、case、default、break、continue、for、do、while
4、异常捕获

try、catch、finally、throw、throws
5、类的关系

extends、implements、super
6、真假

true、false
7、判断类型

instanceof
8、同步

synchronized、volatile
9、其他

native、null、return、transient

关键字梳理出来了,我们就看看呗:

1、基本的数据类型:

boolean、byte、char、double、float、int、long、short
这一类不用多说了,都明白!

2、类和方法相关
package、import、class、interface、abstract、final、private、protected、public、static、new、this、void

package、import:这哥俩在类中都可以看到;

class、interface:分别定义一个类和一个接口的关键字;

abstract:抽象的,可以定义一个类,也可以定义一个方法;

final:最终的,可以定义类和变量,被它定义的类不能再被其他类继承,被它定义的变量的值同样也不能再修改;

private、protected、public:访问类型控制:

private:私有的,只能被本类对象访问;

protected:受保护的,只能被同一个包内的对象访问;

public:公有的,都可以访问;

static:静态,可以定义类、方法、变量。

new:创建一个对象呗;

this:本类对象

void:定义返回值类型,void表示没有返回值

3、流程控制:
if、else、switch、case、default、break、continue、for、do、while

if、else:判断,然后分别执行不同的代码;

switch、case、default:这三哥俩经常一起用,switch里面只能是int类型的值,这个限制要明白,case:表示不同的情况,一般只执行一种情况,然后后面会跟一个break,default:表示前面都没有这种情况;

continue:一般在循环里面使用的比较多,说到这个就要把break拿出来一起讲,它们俩的区别是:break表示不再执行循环,而continue表示终止此次循环,下一次循环还是照样执行的。这点必须要明白;

for:循环,没什么好讲的啦,我们一般会在里面写三个条件,中间那个才是真正控制循环的条件;当然也可以不写三个,但,必须要用逗号分开,里面第二个条件是一定要的,否则将是死循环,很可怕的;、

while和do、while:都是循环,while里面的是判断条件,有时候我们也会写true或者1进去,如果是这样的话,就必须要有break用于跳出循环,否则也是死循环。说到while,就要说说do-while,while是先判断,然后执行循环体,do-while是先执行循环体,然后执行判断是否要执行下一次循环,最大的区别是,while有可能循环体一次都不执行,但do-while至少会执行一次循环体。

4、异常捕获
try、catch、finally、throw

try、catch:这哥俩是分不开的,有try,后面肯定就有catch,finally就未必了,这个看实际的情况,例如IO操作,后面都是要跟的,finally里面就是对IO流的关闭。throw,可以说刚好和try、catch相反,try、catch是捕获异常,而throw是抛出异常,也就是说可能出现的异常自己不处理,给调用者去处理。我们一般会在捕获异常的时候抛出去。

throws,可能抛出异常。一般在方法中声明。如果一个方法里面有可能会出现异常,但本方法不对异常做处理的话(也就是本方法内不做try-catch),那么就可以在方法声明的时候抛出。

5、类的关系
extends、implements、super

extends:继承,这个不用解释了,但有一点需要清楚的是:Java中,只能继承一个类,不能同时继承多个类。

implements:实现,一般是类实现某个接口的时候就用这个,和extends不一样的是,一个类可以实现多个接口。

super:超类,一般来说,我们在重写父类的方法的时候使用的比较多,super()指的是执行父类中相应的方法。super()有一点需要注意的是:有些时候我们super()会放在方法的前面,有些时候会放在方法的后面,放在前面指的是先执行父类相应的方法再执行这个方法体里面语句,super()放后面指的是先执行本方法提,再执行父类的,这两点是有区别的。

6、真假
true、false:这个不需要解释了。

7、判断类型
instanceof:判断某个对象是不是某个类的对象。这话说起来好像有点绕,这个说吧,student是一个学生对象,teacher是一个老师对象,Student是学生类,那么student instanceof Student 的返回值就是true,而teacher instanceof Student 的返回值就是false。

8、同步
synchronized、volatile:这两都和同步相关

synchronized:同步,如果定义在类中的某块或方法中,那么意味着在同一时间内,只能有一个线程对它进行访问。同样,它定义在一个对象或一个变量中,也是只能由一个线程可以对其进行访问。

volatile:它定义在变量中,可以确保每个线程在读取这个变量的值的时候能够确保它读到最新的值,也就是最后修改的值。

9、其他

native、null、return、transient

native:通常想到的是native method,native method其实就是java调用非java代码块的接口。
null:空,这也不用解释了。

return:一般用作方法的返回。后面跟返回值。

transient:这个,要和序列化接口(Serilizable)一起说,实现了这个接口的类可以实现对它的对象进行序列化操作,而transient
定义在实现了序列化的类中的属性的时候,表示该属性不能被序列化。

(待更新。。。)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java java关键字