- 类修饰符
-
- 公共类修饰符public:任意类都能访问。
- 缺省修饰符(空):即类名前面没有任何修饰词,该类只能包内访问——该性质称为“包内访问性”。
- 抽象类修饰符abstract:定义该类为抽象类。
- 最终类修饰符final:不能被继承,被定义为 final 的类通常是一些有固定作用、用来完成某种标准功能的类,如StringBuffer,StringBulider都是最终类。
- 域修饰符
- 可访问控制符
- 公共访问控制符public:任何类都能访问,公共域。
- 保护访问控制符protected:类本身、子类、同一个包中的类可访问。
- 缺省访问控制符(空):包内访问。
- 私有保护访问控制符private protected:只有类本身和子类可访问。
- 私有访问控制符private:只有类本身可访问。
- 非可访问控制符
- 静态修饰符static:用 static 修饰的成员变量仅属于类的变量,而不属于任何一个具体的对象,静态成员变量的值是保存在类的内存区域的公共存储单元,而不是保存在某一个对象的内存区间。任何一个类的对象访问它时取到的都是相同的数据;任何一个类的对象修改它时 , 也都是对同一个内存单元进行操作。
- 最终域修饰符 final :定义符号常量的。
- 易失 ( 共享 ) 域修饰符 volatile :易失 ( 共享 ) 域修饰符 volatile 是用来说明这个成员变量可能被几个线程所控制和修改。也就是说在程序运行过程中,这个成员变量有可能被其它的程序影响或改变它的取值。因此,在使用中要注意这种成员变量取值的变化。通常 volatile 用来修饰接受外部输入的域。
- 暂时性域修饰符 transient :暂时性域修饰符 transient 用来定义一个暂时性变量。其特点是:用修饰符 transient 限定的暂时性变量,将指定 Java 虚拟机认定该暂时性变量不属于永久状态,以实现不同对象的存档功能。否则,类中所有变量都是对象的永久状态的一部分,存储对象时必须同时保存这些变量。
- 方法控制修饰符
- 可访问控制符
- 公共访问控制符public:任何类都能访问,公共域。
- 保护访问控制符protected:类本身、子类、同一个包中的类可访问。
- 缺省访问控制符(空):包内访问。
- 私有保护访问控制符private protected:只有类本身和子类可访问。
- 私有访问控制符private:只有类本身可访问。
- 非访问控制符
- 抽象方法控制符abstract:抽象方法是一种仅有方法头,没有方法体和操作实现的一种方法。
- 静态方法控制符static :静态方法是属于整个类的类方法;而不使用 static 修饰、限定的方法是属于某个具体类对象的方法。 由于 static 方法是属于整个类的,所以它不能操纵和处理属于某个对象的成员变量,而只能处理属于整个类的成员变量,即 static 方法只能处理 static 的域。
- 最终方法控制符final:最终方法是功能和内部语句不能更改的方法,即最终方法不能重载。这样,就固定了这个方法所具有的功能和操作,防止当前类的子类对父类关键方法的错误定义,保证了程序的安全性和正确性。所有被 private 修饰符限定为私有的方法,以及所有包含在 final 类 ( 最终类 ) 中的方法,都被认为是最终方法。
- 本地方法控制符native:表明实现方法的程序设计语言不是Java。如Object类中的clone()方法
- 同步方法控制符 synchronized :该修饰符主要用于多线程共存的程序中的协调和同步。