java类、属性、⽅法修饰符总结
修饰符可以分为访问修饰符(访问控制符)和⾮访问修饰符(⾮访问控制符)
访问修饰符:顾名思义如果在访问范围内可以控制访问。
⾮访问修饰符:实现⼀些其他的功能。
⼀、类修饰符
访问修饰符:public、默认修饰符 ⾮访问修饰符有: abstract 、 final
1、public(公共类修饰符/权限修饰符) : ⼀个java⽂件可以写多个类,但是只能有⼀个类是⽤public进⾏修饰的(也就
是所说的主类),且这个类需要和⽂件名保持⼀致。表⽰所有包中的类都可以访问。
2 、abstract (抽象类修饰符):⽤ abstract 修饰符修饰类表⽰该类是⼀个抽象类。所谓抽象类是指没有实例的抽象概念
类 (没有具体对象)。
注意:⼀个抽象类中可以没有抽象⽅法,但是有抽象⽅法的类必须是⼀个抽象类
3、 final (最终类修饰符):如果⼀个类被final进⾏修饰表⽰该类是最终类,不能被继承。
java类的概念4、类缺省(没有public)访问控制符:如果⼀个类没有访问控制符,说明它具有缺省的访问控制符特性。表⽰该类只能被本
包中的其他类来进⾏访问。这⼀访问特性⼜称为包访问性。
在定义⼀个类的成员(包括属性(变量)和⽅法)时,可以使⽤private(私有修饰符)、protected(保护访问修饰符)、public(权限修饰符)等关键字说明这个成员的访问权限。
访问范围:
public:可被所有类引⽤;
protected:可被该类⾃⾝、⼦类(只能在⼦类中通过⼦类对象来调⽤)、同⼀包中的其他类引⽤;
缺省(没有访问控制符):可被该类⾃⾝、本包中的类引⽤;
private:仅可被该类⾃⾝引⽤和修改,不能被其他任何类(包括⼦类)引⽤。
⼆、属性修饰符
访问修饰符: public、 private、 protected、默认修饰符
⾮访问修饰符: static、 final 、 volatile 、 transient
1、 public(权限修饰符) :⽤ public 修饰的域称为公共域。如果公共域属于⼀个公共类,则可以被所有其它类所引⽤。
由于 public 修饰符会降低运⾏的安全性和数据的封装性,所以⼀般应减少 public 域的使⽤。
2、 private(私有修饰符) : 仅可被该类⾃⾝引⽤和修改,不能被其他任何类(包括⼦类)引⽤。
3、 protected (保护访问修饰符)可被该类⾃⾝、⼦类(只能在⼦类中通过⼦类对象来调⽤)、同⼀包中的其他类引⽤。
4、缺省(没有访问控制符):可被该类⾃⾝、本包中的类引⽤。
5、static (静态域修饰符 ):类成员变量,对所有的实例⼀致,引⽤是前缀可使⽤类名或对象名。
注意:⽤ static修饰的成员变量仅属于类的变量,⽽不属于任何⼀个具体的对象,静态成员变量的值是
保存在类的内存区域的公共存储单元,任何⼀个类的对象访问它时取到的都是相同的数据;任何⼀个类的对象修改它时 , 也都是对同⼀个内存单元进⾏操作。
6、 final (最终域修饰符):数值不变常量,定义同时应对其进⾏初始化,不⼀定,也可以利⽤构造函数给不同的对象赋 不同的值。
7、 volatile (易失 ( 共享 ) 域修饰符):是⽤来说明这个成员变量可能被⼏个线程所控制和修改。在使⽤中要注意这种成 员变量取值的变化。通常 volatile ⽤来修饰接受外部输⼊的域。
8、 transient (暂时性域修饰符):⽤修饰符transient 限定的暂时性变量,将指定 Java虚拟机认定该暂时性变量不属于 永久状态,以实现不同对象的存档功能。否则,类中所有变量都是对象的永久状态的⼀部分,存储对象时必须同时
保存这些变量。
三、⽅法修饰符
访问修饰符:public 、 private、 protected 、 默认修饰符
⾮访问修饰符:abstract、static、 final、 native 、synchronized
1、 abstract (抽象⽅法控制符):抽象⽅法,只有⽅法的定义⽽没有⽅法体和操作实现。需要在⼦类中通过重写该⽅法
来实现。
2、 static(静态⽅法控制符) :静态⽅法,⼜称类⽅法。前缀可使⽤类名或对象名。在⽅法体中只能使⽤类的static变量 和static⽅法。静态⽅法是属于整个类的类⽅法;⽽不使⽤static 修饰、限定的⽅法是属于某个具体类对象的⽅法。
3、 final (最终⽅法修饰符):所有被 private 修饰符限定为私有的⽅法,以及所有包含在 final 类 中的⽅法,都被认为是 最终⽅法。最终⽅法是功能和内部语句不能更改的⽅法,即最终⽅法不能重载(⼦类中不能重新定义该⽅法)。固定了 这个⽅法所具有的功能和操作,防⽌当前类的⼦类对⽗类关键⽅法的错误定义,保证了程序的安全性和正确性。
4、 native(本地⽅法修饰符):为了提⾼程序的运⾏速度,需要⽤其它的⾼级语⾔书写程序的⽅法体,那么该⽅法可定义 为本地⽅法⽤修饰符 native 来修饰。
5、 synchronized(同步⽅法修饰符) :该修饰符主要⽤于多线程共存的程序中的协调和同步。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论