首页 > 试题广场 >

下面的条语句填在第5行的位置,会导致编译错误?( &...

[单选题]
下面的条语句填在第5行的位置,会导致编译错误?(   )
class Super{
public float getNum(){return 3.0f;}
}
public class Sub extends Super{
//5
}
  • public float getNum(){return 4.0f;}
  • public void getNum(){}
  • public void getNum(double d){}
  • public double getNum(float d){return 4.0d;}
A是方法的重写,肯定没有问题。重写就是方法名、方法的参数和返回类型都必须相同。 C和D都是方法的重载,所以也没有问题。重载就是方法名相同,但参数不同。 B方法名相同,参数相同,返回类型不同,这样的方法是模棱两可的,当子类调用的时候,根本区分不出来该调用父类的方法还是自己本身的方法,所以这种方法编译直接pass掉。
发表于 2019-09-07 17:15:05 回复(0)
严重怀疑答案有问题!!!!!
别说重载和重写了,两个函数名都不相同
发表于 2019-09-26 11:55:34 回复(0)
题目是有问题的,首先来说对第六行的定义,很明显第六行已经超出类的范围了,这样严格来说所有答案都不对,其次,题意大体意思是想考察关于方法重写和方法重载的知识,但是,连最基本的方法名字都不对。
发表于 2019-10-13 15:47:09 回复(2)
A:方法名、参数以及返回类型均相同:重写
B:两不像
C:方法名相同,参数不同:重载
D:方法名相同,参数不同:重载
发表于 2020-09-16 12:59:51 回复(0)
类外定义方法,不应该都是错的吗?
编辑于 2019-09-25 12:40:06 回复(1)