加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

我可以在Java中重命名已实现的方法吗?

发布时间:2020-12-15 04:55:47 所属栏目:Java 来源:网络整理
导读:我有一个实现接口的类,其中一个方法叫做onClick.有没有办法实现接口想要的onClick,但是将其命名为其他东西?像(我正在做的): public void AnyMethodNameIWant() implements Interface1.onClick 我问的三个原因是: 看一下方法签名并知道它是很好的 来自界面
我有一个实现接口的类,其中一个方法叫做onClick.有没有办法实现接口想要的onClick,但是将其命名为其他东西?像(我正在做的):

public void AnyMethodNameIWant() implements Interface1.onClick

我问的三个原因是:

>看一下方法签名并知道它是很好的
来自界面
>为了避免界面可能要求我拥有的像onClick这样的“通用”名称
>在许多接口中区分相同的方法名称

如果这是一个基本上“坏”的问题,我很抱歉,因为我不熟悉Java.

解决方法

不,你不能.接口必须通过Java中的同名方法实现.

您可以将@Override注释与接口实现一起使用(从Java 6开始),这有助于澄清这是一种不能随意重命名的方法.

第二个问题的一个选项可能是创建一个实现类,只是为了转发对更具体方法的调用.您可能希望将此作为嵌套甚至匿名类.我不确定我通常会这样做.

编辑:看过第三个问题 – 不,如果你在Java中有两个具有相同方法签名的接口,你只能提供一个实现:(哦,如果你有两个具有相同签名但不同返回类型的接口,更糟糕的是.你总是可以编写一个Interface1 getInterface1()方法,该方法将一个匿名内部类的实例返回到“main”类,代理Interface1方法.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读