java基础之final关键字
final关键字
final可以用来修饰变量、方法和类
final方法
final方法的作用是防止子类通过重写改变方法的行为
类中所有的private方法都是隐式的指定为final,因为不能访问private方法,所以不能重写它。给private方法加上final修饰并不会给方法带来额外的含义。重写一个private方法时编译并不会报错,一个方法是private的,他就不属于父类的一部分,只是创建了一个同名的方法而已
final方法的好处
-
可以防止子类中的方法重写 -
final方法会告诉编译器对于final方法的调用不需要动态绑定,在运行时,不需要进行解析方法调用 -
能够带来更好的效率,编译器对final方法的调用为内联调用。当编译器看到final方法调用时,可以根据自己的判断,略去一般通过方法调用机制插入代码的方式。调用机制包括将方法参数压栈、清除栈参数和最后处理返回值。而对于final方法编译器在方法体中使用实际代码来替换方法调用
final类
final类的作用是该类不允许被继承
final变量
使用final关键字修饰的变量会被认为是常量,final修饰的成员变量必须要进行初始化,任何在程序中试图改变常量值的操作,都会导致编译错误
本文由 mdnice 多平台发布
本文来自博客园,作者:拾光师,转载请注明原文链接:https://www.cnblogs.com/life-time/p/17864227.html 个人博客-> https://zhhll.icu
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
2022-10-20 RequestBodyAdvice和ResponseBodyAdvice