A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 魏冬 中级黑马   /  2012-12-8 17:12  /  1597 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

首先 先 定义两个接口 Q ,S 然后定义一个接口Z继承了 Q ,S  然后在定义一个接口E实现Z?居然报错?按照老毕的视频写的?这样做接口之间继承不就覆盖了所以的方法了么?

谁能给我解决我的疑惑呢?

QQ截图20121208171001.png (24.25 KB, 下载次数: 9)

QQ截图20121208171001.png

评分

参与人数 1技术分 +1 收起 理由
刘芮铭 + 1

查看全部评分

3 个回复

倒序浏览
类之所以不能多继承是因为如果继承了多个父类,父类中可能有相同名称的方法,
而子类如果继承了这些具有相同方法的父类,调用的时候不知道具体调用的是哪一个,编译就会报错。
而如果是接口的话可以多继承是因为接口中的方法都是抽象方法,没有方法主体。需要有子类去具体实现,所以接口可以多实现。

评分

参与人数 1技术分 +1 收起 理由
刘芮铭 + 1

查看全部评分

回复 使用道具 举报
接口与接口只能是继承,类与接口之间才是实现。
所以你接口E实现Z肯定报错。既然E里有方法主体了,那就应该是类E实现Z。
回复 使用道具 举报
你定义的Z是接口,而接口中只存在常量和抽象方法,你那Z里面是抽象方法吗?所以会报错,接口是不可能实现接口的。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马