java语言中的修饰符列表

 

Java语言定义了public、protected、private、abstract、static和final这6常用修饰词外还定义了4个不太常用的修饰词,下面是对这10个Java修饰词的介绍:

1.public

适用对象:类、接口、成员。

介绍:无论所属的包定义在哪,该类(接口、成员)都是可访问的。

2.private

适用对象:成员。

介绍:成员只可以在定义它的类中被访问。

3.static

适用对象:类、方法、变量、初始化函数。

介绍:static修辞的内部类是一个顶级类,它和类包含的成员是不相关的。静态方法是类方法,被指向到所属的类而不是类的实例。静态变量是类变量,无论该变量所在的类创建了多少实例,该变量只存在一个实例被指向到所属的类而不是类的实例。初始化函数是在装载类时执行的,而不是在创建实例时执行的。

4.final

适用对象:类、方法、变量。

介绍:被定义成final的类不允许出现子类,不能被覆盖(不应用于动态查询),变量值不允许被修改。

5.abstract

适用对象:类、接口、方法。

介绍:abstract类中包括没有实现的方法,不能被实例化。abstract方法的方法体为空,该方法的实现在子类中被定义,并且包含一个abstract方法的类必须是一个abstract类。

6.protected

适用对象:成员。

介绍:protect成员只能在定义它的包中被访问,如果在其他包中被访问,则实现这个方法的类必须是该成员所属类的子类。

7.native

适用对象:成员。

介绍:与操作平台相关,定义时并不定义其方法,方法被一个外部的库实现。

8.synchronized

适用对象:方法。

介绍:对于一个静态的方法,在执行之前JVM把它所在的类锁定;对于一个非静态类的方法,执行前把某个特定对象实例锁定。

9.volatile

适用对象:变量。

介绍:因为异步线程可以访问变量,所以有些优化操作是一定不能作用在变量上的。volatile有时可以代替synchronized。

10.transient

适用对象:变量。

介绍:变量不是对象持久状态的一部分,不应该把变量和对象一起串起。

posted on 2011-05-30 10:59  dartagnan  阅读(2224)  评论(0编辑  收藏  举报