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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 雷楚光 中级黑马   /  2012-2-28 10:28  /  1381 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

一个类可以实现多个接口,那么如果2个接口里有2个同名的抽象方法但是返回值不通,会不会有这样的情况?

3 个回复

倒序浏览
你说的这种情况  接口中的 方法 都是抽象方法 没有返回值的
回复 使用道具 举报
我自己搞了一下 糊涂了 待研究
回复 使用道具 举报
本帖最后由 马胜平 于 2012-2-28 12:45 编辑

如果一个类继承了两个接口实现了两个方法 方法名相同 方法参数也相同,,这样会报错JVM不能根据返回类型来区分这两个方法
可以使用内部类来解决这个问题
  1. interface A{
  2.         void f1();
  3. }
  4. interface B{
  5.         int f1();
  6. }
  7. class C implements A{

  8.         @Override
  9.         public void f1() {
  10.         }
  11.         class D implements B{

  12.                 @Override
  13.                 public int f1() {
  14.                         return 0;
  15.                 }
  16.         }
  17. }
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马