Android面试一问一答:接口与抽象类

接口与抽象类有什么不同

  1. 接口可以多实现;
    抽象类只能单继承。
  2. 接口中只有常量;
    抽象类可以有自己的成员变量。
  3. 抽象类的非抽象方法,可以有自己的实现;
    接口在Java7及以前,方法不能有自己的实现,Java8之后通过default、static修饰的方法可以有自己的实现。
  4. 抽象类的成员与方法拥有完整的default、private、protect和public权限;
    接口在Java7及以前,所有方法及成员默认是public static final 修饰,Java8添加了default、static方法,Java9添加了private default、private static方法。
  5. 抽象类的抽象方法,子类如果声明为抽象类可以不实现;
    接口的未实现方法,实现该接口的类必须实现。
    原文作者:LvStudio
    原文地址: https://www.jianshu.com/p/371ec86f08f9
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞