override& overload

2018-07-30  本文已影响0人  横竖撇捺啊

方法重写应遵循“三同一小一大”原则:

“三同”:即方法名相同,形参列表相同,返回值类型相同;

“一小”:子类方法声明抛出的异常比父类方法声明抛出的异常更小或者相等;

“一大”:子类方法的访问修饰符应比父类方法更大或相等。

重载只要求参数列表不同,返回值无关


类Parent和Child定义如下:

1 .class  Parent{

2.         public  float  aFun(float a, float b) { }

3 .}

4 .class  Child  extends  Parent{

5 .

6 .}

将以下哪种方法插入行5是不合法的。(    )

方法重写应遵循“三同一小一大”原则:

“三同”:即方法名相同,形参列表相同,返回值类型相同;

“一小”:子类方法声明抛出的异常比父类方法声明抛出的异常更小或者相等;

“一大”:子类方法的访问修饰符应比父类方法更大或相等。

A选项是重写,但是默认访问修饰符比父类小,插入第五行编辑器会报错。

B、D不是重写。因为形参列表和返回值类型不同,不满足“三同”。所以写在第五行以普通方法对待,插入第五行没有错误。

C选项满足重写的各项条件,是正确的重写,所以插入第五行没有错误。

上一篇 下一篇

猜你喜欢

热点阅读