java - 如果接口(interface)有两个同名的方法,那么在实现时首先调用哪个方法?

标签 java

代码如下:

interface A
{
 void test();
}

interface B
{
 void test();
}

public class C implements A,B {
    public static void main(String[] args) {
        C c=new C(); 
        c.test();
    }
    public void test() {
        System.out.println("hai");
    }
}

这里o/p来了,但是调用的是哪个接口(interface)方法呢?

最佳答案

接口(interface)所需要的只是一个名为 test()void 方法,该方法不带任何参数。 test() 的实现位于您的类中,而不是接口(interface)中。

此外,您不能使用new实例化接口(interface);但是,您可以执行以下操作:

A a = new C();

B b = new C();

编辑:
如果您从方法 header 中取出public,则不起作用,因为接口(interface)方法必须公开。尽管在声明 header 时没有将 public 放入接口(interface)中,但接口(interface)方法默认为 public——这是无法更改的,并且将 public界面内的标题中是不必要的。

关于java - 如果接口(interface)有两个同名的方法,那么在实现时首先调用哪个方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20297617/

相关文章:

java - 继承期间Java中的泛型

java - 如何在 Spring 5 中使用自定义 'TransactionAttributeSource'

java - 在 Java 中使用 HTMLEditorKit 查询 HTML 文件时出现问题

java - 在读取带有字符串的txt文件时获得重复输出,并将它们放入arraylist-Java

java - AES 解密 : javax. crypto.IllegalBlockSizeException:解密中的最后一个 block 不完整

java - 我可以在 INSERT Batch 之后使用 LAST_INSERT_ID() 进行 SELECT 而不用担心吗?

java - 有谁知道如何解析这样的文本文件?

Java 错误蜂鸣声

java - Jackson JsonGenerator 将子对象插入为 JSON 文本

java - Android ECONNREFUSED(连接被拒绝)