繁体   English   中英

为什么我们需要重写接口中的抽象方法?

[英]Why do we need to override abstract methods from an interface?

如果首先没有方法定义,为什么还要重写一个抽象方法?

这是一个Android项目的摘录。

public class SampleClickListener implements OnClickListener {
   @Override
   public void onClick(View view) {
       // custom implementation
   }
}

OnClickListener是具有抽象方法onClick()的接口。 因此,以前没有设置方法定义。 我们到底要覆盖什么?

再三考虑,这可能只是语法上的事情。 难道我说得对,我重写即使没有@Override只要我宣布与相同数量的同类型PARAM参数相同的确切方法名称符号?

谢谢!

可能是答案,因为公共类SampleClickListener是一个单独的类,您可以重写此公共void onClick(View view){//自定义实现}

注意Onclick是按钮类型的属性。

默认情况下,请参见此处,您的ide会将此方法添加到SampleClickListener ,并且您需要在此处为​​您的应用添加点击实现。 不必使用覆盖,但强烈建议使用覆盖。 当您编写一个您认为覆盖另一个函数但拼写错误的函数时,它会警告您。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM