为什么我改了返回值类型并没有报错

来源:9-2 Java 中的方法重写

慕斯3338728

2018-12-04 21:57

package project03;


public class Father {

 public int age;

 public String surname;

 public int mony;

  public void power() {

  System.out.println("制定未来!!");

  }

 

package project03;


public class Son extends Father {

public int power(int a ) {

a = 1;

return a;

  //System.out.println("制定未来!!");

  }

}

 

}


写回答 关注

2回答

  • 慕标2096010
    2018-12-05 15:40:33
    已采纳

    这可能是构成了重载的情况,系统将其认定为两个不同的方法,一个有参,一个无参,所以没报错


  • 程程程程程序员
    2018-12-05 19:10:53

    你这是重载的问题  不知道是不是你自己写错的原因  你这是一个类中再定义了一个内部类类  

    (1)重载是在同一个类中,重写是子类与父类中

    (2)重载与重写都要求方法的名称完全一致

    (3)重载要求参数列表必须不同,重写要求参数列表必须相同

    (4)重载和返回值类型无关,重写有很严格的要求


    C哩C哩1 回复慕标2096...

    应该是给出的子类写在了父类里面了,虽然是继承了父类,但整体来看,它是内部类了。

    2019-11-14 09:48:24

    共 2 条回复 >

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530653 学习 · 6091 问题

查看课程

相似问题