NingGD
2021-10-14 21:34
采纳率: 100%
浏览 22
已结题

java中抽象类和接口的不同

书本上这里讲到:
抽象类可以包含常规类能够包含的任何成员方法,因为子类可能需要继承这些方法。
然后有说接口算是一个“纯”的抽象类
但又说实现接口的类不能从该接口的定义中继承任何行为。
这里不是矛盾了吗?

img

img

img

  • 好问题 提建议
  • 收藏

2条回答 默认 最新

  • Mattie chen 2021-10-14 22:03
    已采纳

    抽象类中有抽象方法和非抽象的方法,大概行为就是非抽象的方法,
    即有方法体才能实现这个类的某种行为,
    接口中只能定义抽象方法(1.8以后静态default方法可以有方法体),所以说比较“纯”的抽象类,
    既然接口中都是抽象方法,那么实现接口的类不能从该接口的定义中继承任何行为,这没毛病,老铁

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • Gavin_Lim 2021-10-14 22:38

    的确是继承不到任何抽象行为,因为接口中的抽象行为都没有定义呀! 所以接口中的行为需要子类去实现呀!!
    你懂了吗 !
    很高兴得到你的采纳!

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题