栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java -final

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java -final

本篇博客仅供博主一人学习使用,内容从书中总结而来,如有内容雷同纯属偶然。

final关键字的可以修饰类成员变量和方法中的局部变量。

final的意思就是最终,所以在java中就有只能定义一次或者是不可修改的意思。

final修饰类

final类不能被继承
使用final来修饰的类叫作final类。final类通常功能是完整的,它们不能被继承。Java中有许多类是final的,譬如String, Interger以及其他包装类。
在开发过程中final主和static一起来修饰工具类,使工具类开始就初始化好了并不能继承

final修饰成员方法

如果final修饰父类中的一个方法,那么这个方法不允许子类重写。且final方法比非final方法要快,因为在编译的时候已经静态绑定了,不需要在运行时再动态绑定。

final修饰成员变量

如果final修饰局部变量或者是成员变量那么它就是常量
与c++中的const一样,常量声明必须赋值。

优点

1.final关键字提高了性能,JVM和Java应用都会缓存final变量。

2.final变量可以安全的在多线程环境下进行共享,而不需要额外的同步开销。

3.使用final,JVM会对其修饰的内容进行优化。

注意
1.在匿名类中所有变量都必须是final变量。
2.final关键字不同于finally关键字,后者用于异常处理。
3.final关键字容易与finalize()方法搞混,后者是在Object类中定义的方法,是在垃圾回收之前被JVM调用的方法。
4.接口中声明的所有变量本身是final的。
5.final和abstract这两个关键字是反相关的,final类就不可能是abstract的,一个不可继承一个必须继承。
6.final方法在编译阶段绑定,称为静态绑定(static binding)。
7.没有在声明时初始化final变量的称为空白final变量(blank final variable),它们必须在构造器中初始化,或者调用this()初始化。
8.final修饰的变量看成常量,在工作中命名规范用大写。
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/890900.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号