2016-01-22 183 views
0

我要实现我的班,从另一个接口扩展的接口界面,但我得到了如下错误:类实现扩展另一个接口

Class1 is not abstract and does not override abstract method method2(param1,param2) in Interface2

public class Class1 implements Interface1 {  
    public Class1() { 
     //some init 
    } 

    @Override 
    public Object method1(Object param1) { 
     //some code 
    } 

    @Override 
    public void method2(Object param1, Object param2) { 
     //some code 
    }   
} 

public interface Interface1 extends Interface2 {  
    //some specific code 
} 

public interface Interface2 { 
    public Object method1(Object param1); 
    public void method2(Object param1, Object param2); 
} 

为什么它不工作,什么我必须这样做吗?

+0

你没” T正确方法2重写,因为接口签名不返回任何东西,你的实现返回_Object_。 – Berger

+0

抱歉是一个错误,我纠正了它! –

+3

插入param1和param2的类型...如果你用正确的参数覆盖了这个方法,这个例子会编译得很好。 – ParkerHalo

回答

0

提供参数参数1和参数 类型试试这个

public class Class1 implements Interface1 {  
    public Class1() { 
     //some init 
    } 

    @Override 
    public Object method1(String param1) { 
     //some code 
     return null; 
    } 

    @Override 
    public void method2(String param1,String param2) { 
     //some code 
    }   
} 


interface Interface1 extends Interface2 {  
    //some specific code 
} 


interface Interface2 { 
    public Object method1(String param1); 
    public void method2(String param1,String param2); 
} 
+0

啊...对象只是这个代码中的一个示例...我在代码中并没有真正使用它,但是谢谢... –

+0

我的错误如下:在interface2中,我在方法params中使用了一个枚举而且..我在interface2中定义了它.... –