假设父类有一个方法
public double f(double x,double y){
         return x+y;   }
是否允许子类再声明如下一个方法?
public float f(double x,double y){
            return 23;   }
 我试过编译了,提示说不兼容,但是不是很懂,大侠们帮我解答解答好么??谢谢

解决方案 »

  1.   

    public double f(double x,double y)public float f(double x,double y)不能只靠返回值的不同,去区分两个方法。
      

  2.   

    其实楼主的问题在于:double为何不兼容float
      

  3.   

    我也想知道float和double为什么不兼容
      

  4.   

    返回值不是同一类型,构不成重写...float和double又不是子父类,他们只是基本类型中的两种,也不符合重载的条件
      

  5.   

    这既不是重写也不是重载,重写方法签名和返回值类型都要相同,重载只要方法签名不同就可以了,方法签名是
    <方法名>(参数类型,参数个数)