抽象与接口

抽象类

  • 抽象类和抽象方法必须用abstract修饰
  • 抽象类不能被实例化
  • 抽象类有默认构造方法
  • 有抽象方法毕为抽象类,抽象类不一定有抽象方法。
  • 子类一定要实现所继承抽象类的抽象方法
  • 成员变量不能被抽象。
  • abstract不能跟static共存,因为被static修饰的方法是可以被类名调用的,而abstract方法是不允许被调用的
  • final不能跟static共存,因为final修饰的方法是不让被继承的,而abstract修饰的方法是需要被子类继承的。
  • private 不能跟static共存,因为private修饰的成员变量,成员方法是不会被继承的,而abstract修饰的方法是需要被子类继承的。

接口

狭义上是指java的interface,广义上所有提供规则的都是接口
  • 接口里面没有构造方法,接口里面的成员方法必须是抽象的。
  • 接口中的成员变量是的默认修饰符是public static final,可以自己设定。
  • 类实现接口用implement
  • 接口不能实例化
  • 实现的接口必须重写所有接口的方法
  • 接口对外是暴露的。

接口与抽象类

抽象类是单继承,is 的关系
接口是多实现,like 的关系

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 抽象方法和抽象类(abstract) 抽象方法和抽象类使用 abstract 来定义,有抽象方法的类必须被定义为抽...
    AshengTan阅读 578评论 0 1
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,742评论 18 399
  • 一:java概述:1,JDK:Java Development Kit,java的开发和运行环境,java的开发工...
    ZaneInTheSun阅读 2,686评论 0 11
  • 本文出自 Eddy Wiki ,转载请注明出处:http://eddy.wiki/interview-java.h...
    eddy_wiki阅读 1,224评论 0 5
  • 没有人喜欢上班,如果可以,我们更愿意周游世界,见不同的风景。 实现财务自由,关键是将一份时间贩卖多次。 时间对于我...
    静心观情阅读 197评论 2 1