java - 如何用超类中存在的名称重命名方法?
问题描述
我想用 重命名我的函数notify()
,我得到编译错误:
Method 'notify()' cannot override method 'notify()' in
'java.lang.Object'; overridden method is final.
我可以这样做吗?如果不是,为什么不呢?
解决方案
您不能覆盖最终方法。
notify
如果需要参数,您可以使用名称定义方法,例如
void notify(Object thing, String that) {
// ...
}
否则,您唯一的选择是重命名该方法。
(如果你想让你的名字被你的代码的未来用户诅咒,你可以命名你的方法notıfy()
;但无论如何,如果没有土耳其语键盘,这将是非常棘手的。)
推荐阅读
- java - 从多个线程中读取一个java“队列”,每个线程中的所有对象
- c# - Windows Server 2016 中的证书吊销检查失败
- r - R:使用 prcomp(,center=T,scale=T) 和缩放数据然后使用 prcomp() 之间的区别
- validation - 使用自定义错误消息在 WCF 服务中进行验证
- typescript - 在 Typescript 中使用带有约束的泛型类型时出错 - 2536
- android - 如何在运行 optimize_for_inference.py 时修复“google.protobuf.message.DecodeError:解析消息时出错”
- amazon - 是否有任何方法或解决方法来安排 Amazon Mechanical Turk HIT?
- node.js - 查询人员按字段值搜索
- javascript - 保护 JavaScript 中自定义大写转换函数中的标点符号
- javascript - 闭包的具体用途是什么?