老师,检查下,另外解答下疑惑

老师,检查下,另外解答下疑惑

public interface IFly{
     public void fly();
}


public class Plane implements IFly{
   @Override
   public void fly() {
       System.out.println("飞机在天上飞");
   }
}


public class Bird implements IFly {
   @Override
   public void fly() {
       System.out.println("小鸟在天空翱翔");
   }
}


public class Balloon implements IFly {
   @Override
   public void fly() {
       System.out.println("气球飞上天空");
   }
}

http://img1.sycdn.imooc.com//climg/5dde7fb90903c0ac04520118.jpg

我在接口中定义方法的时候加入了语句块,但是报错“Interface abstract methods cannot have body”,

但是加入静态static或者default或者删掉代码块就正常,为什么会出现这样

正在回答

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

1回答

同学你好,代码编写的不错。同学也可以将Test类编写完整后,让老师检查一下哦!

根据报错信息“Interface abstract methods cannot have body”表示接口中的方法是不能含有方法体的,这里对于接口类中规定,定义的抽象方法是不能含有方法体的,接口中只有静态static或者default的方法可以添加方法体。

如:

http://img1.sycdn.imooc.com//climg/5ddf3e9a0948cdd209100373.jpg

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

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