两个接口有同样的方法,就是返回值不一样
public interface A {
    public double getMoney();
}
public interface B {
    public void getMoney();
}
class C implements A,B {
    ?????????
}
这时候怎么重写方法???

解决方案 »

  1.   

    根据Java的重载和覆盖的定义,这样做事肯定不可以的
      

  2.   


    方法名冲突了重载更返回值没关系只和参数个数类型有关
    public class C implements A,B{ public void getMoney() {
    System.out.print("fdsfdsfds");

    }

    public double getMoney() {
    // TODO Auto-generated method stub
    return 0;
    }}改下public interface B {
      public double getMoneyB(); 
    }public class C implements A,B{ public void getMoney() {
    System.out.print("fdsfdsfds");

    }

    public double getMoneyB() {
    // TODO Auto-generated method stub
    return 0;
    }}
      

  3.   

    ji de shi bu ke yi de 
      

  4.   

    接口设计有问题,没法解决
    要重新设计接口
    比如把都有的那个方法抽出来放到一个接口中
    其他接口再extends那个新的接口
      

  5.   

    顶下3楼
    你要是在C类里实现,A,B的方法,会报错,程序会告诉你C类里有相同的方法,所以,你的想法就错了。
    interface A { 
        public double getMoney(); 

            interface B { 
        public void getMoney(); 

    class C implements A,B{ 
       // ????????? 
    public double getMoney(){
      return 1;
    }
     public void getMoney(){
     
     }