繁体   English   中英

Java中具有相同名称的方法

[英]Methods with the same name in java

假设我们在Java中有一个如下所示的接口

public interface AnInterface
{
      public void aMethod();
}

和一个类如下:

public class AClass
{
   public void aMethod()
   {
      //bla bla bla
   }
}

现在,我将定义另一个类,例如Subclass,它扩展了AClass并实现了AnInterface,如下所示:

public class Subclass extends AClass implements AnInterface
{
   public void aMethod()
   {
      //do something
   }
}

子类中aMethod()到底做什么? 它在AnInterface中实现该方法吗? 还是重写AClass中的方法?

为了使aMethod()实现AnInterface的方法,我应该怎么做? 同样,如果我希望它覆盖AClass中的方法,该怎么办?

您可能已经注意到,接口方法没有任何正文。 这只是意味着,实现此接口的类必须实现这些方法,此处为aMethod() 您的类SubClass扩展了AClassAClass继承了aMethod()方法。 现在执行aMethodSubClass将简单地覆盖从方法AClass并同时坚持接口规则。 因此,有效的方法将是SubClass

要回答你的问题简言之: aMethod()在子类都目前从实现方法AnInterface并从覆盖它AClass

暂无
暂无

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

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