final关键字

举报
@小红花 发表于 2022/02/25 16:27:42 2022/02/25
【摘要】 final是java语言中的一个关键字。final表示最终的,不可变的。final可以修饰变量,方法和类。final修饰的变量只能赋值一次。final修饰的方法无法被覆盖,被重写。 final修饰的类无法被继承。B类继承A类,相当于对A类的功能进行扩展,如果你不希望别人对A类型进行扩展,你可以给A类加final关键字,这样的话A类就不无法被继承了。 final修饰的引用只能指向一个对象,并且...
  • finaljava语言中的一个关键字。
  • final表示最终的,不可变的。
  • final可以修饰变量,方法和类。
  • final修饰的变量只能赋值一次。
  • final修饰的方法无法被覆盖,被重写。

 

final修饰的类无法被继承。

B类继承A类,相当于对A类的功能进行扩展,如果你不希望别人对A类型进行扩展,你可以给A类加final关键字,这样的话A类就不无法被继承了。

 

final修饰的引用只能指向一个对象,并且他只能永远指向该对象,无法在指向别的对象。并且在该方法执行过程中,该引用指向对象之后,该对象不会被垃圾回收器回收。直到当前方法结束,才会释放空间。

 

虽然final的引用指向对象A后,不能再重新指向对象B,但是对象A

内部的数据可以被修改。

 

final修饰的实例变量,系统不管赋默认值,要求程序员自己手动赋值。这个手动赋值,在变量后面赋值可以,在构造方法中赋值也可以。

 

实例变量在什么时候赋值(初始化):

构造方法执行的过程中赋值(new的时候赋值)。

 

final修饰的实例变量一般在前面添加static修饰。

static final 联合修饰的变量称为常量。

常量名建议全部大写,每个单词之间采用下划线衔接。

常量一般都是公开的:public

 

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。