Java final static
2021/7/7 11:05:13
本文主要是介绍Java final static,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
idea 错误提示
@Override 重写方法的目的是为了多态, 重写是实现多态的前提, 即重写是发生于继承且针对非static方法
语法上子类允许出现和父类只有方法体不一样的static方法, 但语法上static支持重写, 但是运行上达不到多态
a的编译类型为 父类A, 运行类型为 子类B, a调用static方法时, 是依据编译类型, 没有多态
当定义方法为static final时
When a static method is overriden in a subclass it can still be accessed via the superclass making the final declaration not very necessary. Declaring a static method final does prevent subclasses from defining a static method with the same signature.
将一个static方法声明为final是不必要的, 声明为final可以阻止子类定义相同签名的static方法
static方法属于类, static方法无this隐式参数, 可以使用类名直接调用static方法
方法被声明为static:
- 无需访问对象
- 只需要访问类的static域
static方法不能被Override,但是可以被子类相同signature的方法hide,子类的static方法不是Override,而是hide, 如果在子类中直接调用该static方法,会调用子类重新定义的,而不是父类的,而父类定义为 static final
final会阻止隐藏, 故子类重新定义static方法会报错
这篇关于Java final static的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-01一个基于注解驱动的可视化的DDD架构-超越COLA的设计
- 2025-01-01PlantUML 时序图 基本例子
- 2025-01-01plantuml 信号时序图
- 2025-01-01聊聊springboot项目如何优雅进行数据校验
- 2024-12-31自由职业者效率提升指南:3个时间管理技巧搞定多个项目
- 2024-12-31适用于咨询行业的项目管理工具:提升跨团队协作和工作效率的最佳选择
- 2024-12-31高效协作的未来:2024年实时文档工具深度解析
- 2024-12-31商务谈判者的利器!哪 6 款办公软件能提升春节合作成功率?
- 2024-12-31小团队如何选择最实用的项目管理工具?高效协作与任务追踪指南
- 2024-12-31数据赋能,智慧养老:看板软件如何重塑养老服务生态