中易网

JAVA类得载的问题

答案:5  悬赏:0  
解决时间 2021-04-28 17:04
  • 提问者网友:江山如画
  • 2021-04-28 01:50

可以限制一个方法重载的声明语句有( )。
A. Final void methoda() {}
B. Void final methoda() {}
C. Static void methoda() {}
D. Static final void methoda() {}
E. Final abstract void methoda() {}

给出答案后请说一下理由哈!!

最佳答案
  • 二级知识专家网友:不羁的心
  • 2021-04-28 02:41
C静态方法没有多态,就算在子类里再写了个这样的方法,也只是写了一个同名的方法,不是重载
全部回答
  • 1楼网友:厭世為王
  • 2021-04-28 05:18
重载不能被限制。楼上回答的很好。可以选择
  • 2楼网友:余生继续浪
  • 2021-04-28 04:56

题目有错。应该是“限制一个方法重写”,方法重载是无法限制的。当然,关键字都是小写的,这个暂时无视。

只要符合重载条件——同名、参数不同——就是重载,加什么修饰都无法限制。

可以限制的是“重写”,使用final修饰的方法在子类中不能被重写。

所以,如果题目要的是“限制重写”,那就选A。

重写——overriding。

重载——overloading。

  • 3楼网友:夢想黑洞
  • 2021-04-28 04:38

(严格地说都错,因为楼主把关键字都大写了,实际上是通过不了编译的)

如果忽略大小写:

选A,D,E!

B选项void和final位置反了

C选项的static关键字不能保证方法不被重载。

有final修饰的方法是不能被重写,重载的!,所以选A,D,E!

  • 4楼网友:何以畏孤独
  • 2021-04-28 04:20

A. Final void methoda() {} final 修饰的方法不能被覆盖。

D 纯粹就是错的,abstract就是要用来覆盖的。final又不让覆盖,矛盾了

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息