为了账号安全,请及时绑定邮箱和手机立即绑定

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

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("制定未来!!");

  }

}

 

}


正在回答

3 回答

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


2 回复 有任何疑惑可以回复我~

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

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

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

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

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


2 回复 有任何疑惑可以回复我~
#1

慕标2096010

构成内部类?不是只有一个子类和一个父类吗
2018-12-05 回复 有任何疑惑可以回复我~
#2

C哩C哩1 回复 慕标2096010

应该是给出的子类写在了父类里面了,虽然是继承了父类,但整体来看,它是内部类了。
2019-11-14 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

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

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信