接口 静态方法 调用

接口 静态方法 调用

您好,

如下图:

http://img1.sycdn.imooc.com/climg//593ea91b0001c3e409240618.jpg


接口中的静态方法,请问是否可以透过实现类调用?为什么?


谢谢~


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

其实可以从设计者的角度来想这问题

接口这个东西是多实现的, 也就是可以 implents A,B

但问题是 如果 A 和 B 里面 都有一个有实体方法内容的静态方法 stop() { // 方法的内容不同 }

那么 C 实现 A 和 B 的时候 假设可以调用  

也就是C.stop() 或者 C 的实现类 c.stop() 

问题来了, 两个都实现了要我去调用哪个呢? 

JAVA 的设计者肯定要规避这让系统犯晕的错误发生


好帮手慕珊 2017-06-13 09:36:53

你好!可以写代码尝试一下,是不可以的。祝学习愉快!

  • 提问者 慕后端4309713 #1
    你好! 请问为什么 实现类不能调用 接口定义的静态方法? 谢谢~
    2017-06-13 10:42:58
  • 好帮手慕珊 回复 提问者 慕后端4309713 #2
    这个其实就是一个语法规则,Java中是不允许这样做的。
    2017-06-13 11:56:16
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师