两个具有相同方法名但返回类型不同的Java接口

时间:2016-03-23 09:43:28

标签: java interface

我写过以下java代码。

interface emp
{
   public void disp1();

}
interface emp1
{
   public int disp1();
}

public class Demo4 implements emp,emp1
{
   public static void main(String args[])
   {

   }

@Override
public int disp1() 
   {

    // TODO Auto-generated method stub
    return 0;
    }
}

它显示错误为 - 返回类型与emp.disp1()不兼容 如果我将其更改为void,则表示 - 返回类型与emp1.disp1()不兼容

任何人都可以向我解释这个场景以及这个错误背后的原因

1 个答案:

答案 0 :(得分:1)

嗯,你不能通过同一个类实现这两个接口,因为这两个方法具有相同的签名(这意味着它们不能在同一个类中实现)但不能返回相同的返回type(表示单个方法实现,无论其返回类型如何,都不会实现这两个接口)。