【Java】final关键字的用法

  在Java中封装继承多态面向对象编程(OOP)的三个核心概念。而final关键字可以对封装继承多态行为进行约束。final关键字可以用来修饰方法成员变量以及局部变量

修饰类

  当用final修饰类时,此类不可被继承,即final类没有子类。使用final可以保证用户调用时动作的一致性,也可以防止子类覆盖情况的发生。

修饰方法

  当用final修饰方法时,该方法不能被重写。也就是说,如果一个类继承了该方法,那么它就不能改变这个方法的实现。

对于方法来说abstract关键字和final关键字不能同时使用,因为他们是矛盾的,abstract的方法必须覆盖重写,
final的方法不能覆盖重写。

修饰类成员变量

  对于成员变量来说,一旦使用final关键字修饰,其值在赋值后不能发生变化,对于引用类型的数据其内容可以发生变化。

局部变量的不同点在于,成员变量必须有默认值,因此必须手动赋值。

final修饰的私有成员变量可以定义的时候直接赋值,或者使用构造方法在构造方法体里面赋值,但是只能二者选其一且只能发生一次赋值行为。

final修饰的静态成员变量可以定义的时候直接赋值,或者使用静态代码块赋值,同样的只能二者选其一且只能发生一次赋值行为。

修饰局部变量

  对于局部变量来说,一旦使用final关键字修饰,其值在赋值后也不能发生变化,对于引用类型的数据其内容可以发生变化。

final修饰的局部变量可以在定义的时候赋值,或者在局部作用域内进行赋值,同样只能二者选其一且只能发生一次赋值行为。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值